Linux内核源代码分析PDF电子书下载
- 电子书积分:18 积分如何计算积分?
- 作 者:(美)(S.麦克斯韦尔)Scott Maxwell著;冯锐等译
- 出 版 社:北京:机械工业出版社
- 出版年份:2000
- ISBN:7111080920
- 页数:634 页
第一部分 Linux内核源代码 1
arch/i386/kernel/entry.S 2
arch/i386/kernel/init_task.c 8
arch/i386/kernel/irq.c 8
arch/i386/kernel/irq.h 19
arch/i386/kernel/process.c 22
arch/i386/kernel/signal.c 30
arch/i386/kernel/smp.c 38
arch/i386/kernel/time.c 58
arch/i386/kernel/traps.c 65
arch/i386/lib/delay.c 73
arch/i386/mm/fault.c 74
arch/i386/mm/init.c 76
fs/binfmt-elf.c 82
fs/binfmt_java.c 96
fs/exec.c 98
include/asm-generic/smplock.h 107
include/asm-i386/atomic.h 108
include/asm-i386/current.h 109
include/asm-i386/dma.h 109
include/asm-i386/elf.h 113
include/asm-i386/hardirq.h 114
include/asm-i386/page.h 114
include/asm-i386/pgtable.h 115
include/asm-i386/ptrace.h 122
include/asm-i386/semaphore.h 123
include/asm-i386/shmparam.h 124
include/asm-i386/siginfo.h 125
include/asm-i386/sigcontext.h 125
include/asm-i386/signal.h 127
include/asm-i386/smp.h 130
include/asm-i386/softirq.h 132
include/asm-i386/spinlock.h 133
include/asm-i386/system.h 137
include/asm-i386/uaccess.h 139
include/linux/binfmts.h 146
include/linux/capability.h 147
include/linux/elf.h 150
include/linux/elfcore.h 156
include/linux/interrupt.h 157
include/linux/kernel.h 158
include/linux/kernel_stat.h 159
include/linux/mm.h 160
include/linux/limits.h 160
include/linux/module.h 164
include/linux/msg.h 168
include/linux/personality.h 169
include/linux/reboot.h 169
include/linux/resource.h 170
include/linux/sched.h 171
include/linux/sem.h 179
include/linux/shm.h 180
include/linux/signal.h 181
include/linux/slab.h 184
include/linux/smp.h 184
include/linux/smp_lock.h 185
include/linux/swap.h 185
include/linux/swapctl.h 187
include/linux/sysctl.h 188
include/linux/tasks.h 194
include/linux/time.h 194
include/linux/timer.h 195
include/linux/times.h 196
include/linux/tqueue.h 196
include/linux/wait.h 198
init/main.c 198
init/version.c 212
ipc/msg.c 213
ipc/sem.c 218
ipc/shm.c 227
ipc/util.c 236
kernel/capability.c 237
kernel/dma.c 240
kernel/exec_domain.c 241
kernel/exit.c 242
kernel/fork.c 248
kernel/info.c 255
kernel/itimer.c 255
kernel/kmod.c 257
kernel/module.c 259
kernel/panic.c 270
kernel/printk.c 271
kernel/sched.c 275
kernel/signal.c 295
kernel/softirq.c 307
kernel/sys.c 307
kernel/sysctl.c 318
kernel/time.c 330
mm/memory.c 335
mm/mlock.c 345
mm/mmap.c 348
mm/mprotect.c 358
mm/mremap.c 361
mm/page_alloc.c 363
mm/page_io.c 368
mm/slab.c 372
mm/swap.c 394
mm/swap_state.c 395
mm/swapfile.c 398
mm/vmalloc.c 406
mm/vmscan.c 409
1.1 Linux和Unix的简明历史 416
第二部分 Linux内核源代码分析 416
第1章 Linux简介 416
1.2 GNU通用公共许可证 418
1.3 Linux开发过程 419
第2章 代码初识 421
2.1 Linux内核源程序的部分特点 421
2.1.1 gcc特性的使用 421
2.1.2 内核代码习惯用语 422
2.1.3 减少#if和#ifdef的使用 423
2.2 代码样例 424
2.2.1 printk 424
2.2.2 等待队列 429
2.2.3 内核模块 432
2.3.1 配置内核 434
2.3 配置与编译内核 434
2.3.3 备份的重要性 436
2.3.2 构建内核 436
2.3.4 发布你的改进 437
第3章 内核体系结构概述 439
3.1 内核设计目标 439
3.1.1 清晰性 439
3.1.2 兼容性 439
3.1.3 可移植性 440
3.1.4 健壮性和安全性 440
3.1.5 速度 441
3.2 内核体系结构初识 441
3.3 内核体系结构的深入了解 442
3.4 Linux内核的类型 444
3.5.1 内核源程序目录结构 446
3.5 设计和实现的关系 446
3.5.2 体系结构相关和体系结构无关的代码 450
第4章 系统初始化 451
4.1 引导PC机 451
4.2 初始化Linux内核 452
4.2.1 BogoMIPS 455
4.2.2 分析内核选项 456
4.3 init 459
第5章 系统调用 462
5.1 什么是系统调用 462
5.2 如何激活系统调用 463
5.2.1 system_call 464
5.2.2 lcall7 468
5.3 系统调用样例 469
第6章 信号、中断和时间 474
6.1 锁的概述 474
6.2 信号 474
6.2.1 数据结构 475
6.2.2 应用函数 476
6.2.3 传送信号 480
6.2.4 其他有关信号的函数 489
6.2.5 内核如何区分实时信号和非实时信号 491
6.3 中断 492
6.3.1 中断请求:IRQ 492
6.3.2 下半部分 493
6.3.3 数据结构 493
6.3.4 操作和IRQ 496
6.3.5 硬件中断处理程序和下半部分 499
6.4 时间 502
第7章 进程和线程 505
7.1 调度和时间片 505
7.2 实时进程 506
7.3 优先级 506
7.4 进程ID:PID 506
7.5 引用计数 506
7.6 权能 507
7.7 进程在内核中是如何表示的 508
7.8 进程来源:fork和_ _clone 511
7.9 运行新程序 514
7.10 可执行格式 517
7.11 调度及它们是如何运行的 519
7.11.1 调度函数和调度策略 519
7.11.2 计算goodness值 522
7.11.3 非实时优先级 523
7.11.4 实时优先级 525
7.12 遵守限制 526
7.12.1 权能 526
7.12.2 用户ID和组ID 529
7.12.3 资源限制 530
7.13 进程的结束 530
7.13.1 exit 530
7.13.2 wait 532
第8章 内存 535
8.1 虚拟内存 535
8.1.1 交换和分页 536
8.1.3 内存管理单元 537
8.1.2 地址空间 537
8.1.4 页目录和页表 538
8.1.5 转换后备缓存 540
8.1.6 段 540
8.2 进程的内存组织 541
8.2.1 struct vm_area_struct 541
8.2.2 struct vm_operations_struct 542
8.2.3 struct mm_struct 542
8.2.4 VMA的操作 542
8.3 分页 544
8.3.1 页面保护详述 544
8.3.2 写拷贝 545
8.3.3 页面错误 546
8.3.4 页面调出 551
8.4 交换设备 552
8.5 内存映射mmap 556
8.6 用户空间和内核空间的动态内存 560
8.6.1 brk 561
8.6.2 vmalloc和vfree 562
8.7 主存储器信息转储 565
第9章 System V IPC 568
9.1 消息队列 568
9.2 信号量 581
9.3 共享内存 590
第10章 对称多处理 596
10.1 并行程序设计概念及其原语 597
10.1.1 原子操作 597
10.1.2 test-and-set 599
10.1.3 信号量 600
10.1.4 自旋锁 604
10.2 APIC和CPU-To-CPU通信 607
10.3 SMP支持如何影响内核 607
10.3.1 对调度的影响 607
10.3.2 smp_local_timer_interrupt 610
10.3.3 lock_kernel和unlock_kernel 611
10.3.4 softirq_trylock 612
10.3.5 cli和sti 612
10.3.6 irq_enter和irq_exit 613
第11章 可调内核参数 614
11.1 /proc/sys支持 616
11.2 sysctl系统调用 621
附录A Linux 2.4 627
附录B GNU通用公共许可证 629
附录C 光盘上的内容及系统需求 634
- 《水面舰艇编队作战运筹分析》谭安胜著 2009
- 《分析化学》陈怀侠主编 2019
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《影响葡萄和葡萄酒中酚类特征的因素分析》朱磊 2019
- 《仪器分析技术 第2版》曹国庆 2018
- 《全国普通高等中医药院校药学类专业十三五规划教材 第二轮规划教材 分析化学实验 第2版》池玉梅 2018
- 《Power BI数据清洗与可视化交互式分析》陈剑 2020
- 《行测资料分析》李永新主编 2019
- 《药物分析》贡济宇主编 2017
- 《土壤环境监测前沿分析测试方法研究》中国环境监测总站编著 2018
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019