• Linux内核深度解析
  • Linux内核深度解析
21年品牌 40万+商家 超1.5亿件商品

Linux内核深度解析

全新正版 极速发货

87.85 6.4折 138 全新

库存10件

广东广州
认证卖家担保交易快速发货售后保障

作者余华兵

出版社人民邮电出版社

ISBN9787115504111

出版时间2019-05

装帧平装

开本16开

定价138元

货号1201873698

上书时间2024-08-28

谢岳书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
作者简介
余华兵,2005年毕业于华中科技大学计算机学院,取得硕士学位。毕业后的十余年一直在网络通信行业从事软件设计和开发工作,研究方向包括IPv4协议栈、IPv6协议栈和Linux内核。

目录
章内核引导和初始化1
1.1到哪里读取引导程序1
1.2引导程序1
1.2.1入口_start1
1.2.2标号reset2
1.2.3函数_main4
1.2.4函数run_main_loop6
1.3内核初始化8
1.3.1汇编语言部分8
1.3.2C语言部分11
1.3.3SMP系统的引导12
1.4init进程15
第2章进程管理17
2.1进程17
2.2命名空间18
2.3进程标识符20
2.4进程关系21
2.5启动程序23
2.5.1创建新进程23
2.5.2装载程序41
2.6进程退出48
2.6.1线程组退出49
2.6.2终止进程51
2.6.3查询子进程终止原因53
2.7进程状态55
2.8进程调度55
2.8.1调度策略55
2.8.2进程优先级56
2.8.3调度类57
2.8.4运行队列59
2.8.5任务分组60
2.8.6调度进程65
2.8.7调度时机75
2.8.8带宽管理85
2.9SMP调度93
2.9.1进程的处理器亲和性93
2.9.2对调度器的扩展96
2.9.3限期调度类的处理器负载均衡96
2.9.4实时调度类的处理器负载均衡98
2.9.5公平调度类的处理器负载均衡99
2.9.6迁移线程108
2.9.7隔离处理器110
2.10进程的安全上下文111
第3章内存管理113
3.1概述113
3.2虚拟地址空间布局115
3.2.1虚拟地址空间划分115
3.2.2用户虚拟地址空间布局115
3.2.3内核地址空间布局121
3.3物理地址空间122
3.4内存映射124
3.4.1应用编程接口125
3.4.2数据结构129
3.4.3创建内存映射133
3.4.4虚拟内存过量提交策略137
3.4.5删除内存映射139
3.5物理内存组织140
3.5.1体系结构140
3.5.2内存模型140
3.5.3三级结构141
3.6引导内存分配器144
3.6.1bootmem分配器144
3.6.2memblock分配器145
3.6.3物理内存信息148
3.7伙伴分配器151
3.7.1基本的伙伴分配器151
3.7.2分区的伙伴分配器152
3.7.3根据可移动性分组158
3.7.4每处理器页集合162
3.7.5分配页163
3.7.6释放页181
3.8块分配器184
3.8.1编程接口185
3.8.2SLAB分配器186
3.8.3SLUB分配器197
3.8.4SLOB分配器204
3.9不连续页分配器207
3.9.1编程接口207
3.9.2数据结构208
3.9.3技术原理209
3.10每处理器内存分配器210
3.10.1编程接口210
3.10.2技术原理212
3.11页表219
3.11.1统一的页表框架219
3.11.2ARM64处理器的页表222
3.12页表缓存226
3.12.1TLB表项格式226
3.12.2TLB管理226
3.12.3地址空间标识符228
3.12.4虚拟机标识符232
3.13巨型页233
3.13.1处理器对巨型页的支持233
3.13.2标准巨型页235
3.13.3透明巨型页245
3.14页错误异常处理257
3.14.1处理器架构特定部分257
3.14.2用户空间页错误异常266
3.14.3内核模式页错误异常283
3.15反碎片技术288
3.15.1虚拟可移动区域289
3.15.2内存碎片整理291
3.16页回收309
3.16.1数据结构310
3.16.2发起页回收317
3.16.3计算扫描的页数320
3.16.4收缩活动页链表321
3.16.5回收不活动页323
3.16.6页交换325
3.16.7回收slab缓存335
3.17内存耗尽杀手338
3.17.1使用方法338
3.17.2技术原理338
3.18内存资源控制器340
3.18.1使用方法340
3.18.2技术原理344
3.19处理器缓存370
3.19.1缓存结构370
3.19.2缓存策略372
3.19.3缓存维护374
3.19.4SMP缓存一致性378
3.19.5利用缓存提高性能的编程技巧383
3.20连续内存分配器384
3.20.1使用方法385
3.20.2技术原理386
3.21userfaultfd391
3.21.1使用方法391
3.21.2技术原理395
3.22内存错误检测工具KASAN401
3.22.1使用方法401
3.22.2技术原理402
第4章中断、异常和系统调用403
4.1ARM64异常处理403
4.1.1异常级别403
4.1.2异常分类404
4.1.3异常向量表405
4.1.4异常处理407
4.2中断411
4.2.1中断控制器412
4.2.2中断域413
4.2.3中断控制器驱动初始化415
4.2.4Linux中断处理422
4.2.5中断线程化428
4.2.6禁止/开启中断430
4.2.7禁止/开启单个中断431
4.2.8中断亲和性431
4.2.9处理器间中断432
4.3中断下半部434
4.3.1软中断435
4.3.2小任务441
4.3.3工作队列444
4.4系统调用457
4.4.1定义系统调用457
4.4.2执行系统调用459
第5章内核互斥技术463
5.1信号量464
5.2读写信号量465
5.3互斥锁466
5.4实时互斥锁467
5.5原子变量468
5.6自旋锁472
5.7读写自旋锁476
5.8顺序锁478
5.8.1完整版的顺序锁479
5.8.2只提供序列号的顺序锁481
5.9禁止内核抢占482
5.10进程和软中断互斥483
5.11进程和硬中断互斥483
5.12每处理器变量484
5.12.1静态每处理器变量484
5.12.2动态每处理器变量484
5.12.3访问每处理器变量485
5.13每处理器计数器485
5.14内存屏障487
5.14.1编译器屏障488
5.14.2处理器内存屏障489
5.14.3MMIO写屏障492
5.14.4隐含内存屏障493
5.14.5ARM64处理器内存屏障493
5.15RCU495
5.15.1使用方法496
5.15.2技术原理504
5.16可睡眠RCU533
5.16.1使用方法533
5.16.2技术原理534
5.17死锁检测工具lockdep542
5.17.1使用方法543
5.17.2技术原理543
第6章文件系统548
6.1概述548
6.1.1用户空间层面549
6.1.2硬件层面549
6.1.3内核空间层面550
6.2虚拟文件系统的数据结构552
6.2.1超级块552
6.2.2挂载描述符554
6.2.3文件系统类型555
6.2.4索引节点556
6.2.5目录项559
6.2.6文件的打开实例和打开文件表561
6.3注册文件系统类型563
6.4挂载文件系统564
6.4.1系统调用mount566
6.4.2绑定挂载567
6.4.3挂载命名空间568
6.4.4挂载根文件系统574
6.5打开文件580
6.5.1编程接口580
6.5.2技术原理582
6.6关闭文件591
6.7创建文件593
6.7.1使用方法593
6.7.2技术原理594
6.8删除文件595
6.8.1使用方法595
6.8.2技术原理595
6.9设置文件权限597
6.9.1使用方法597
6.9.2技术原理598
6.10页缓存599
6.10.1地址空间600
6.10.2基数树601
6.10.3编程接口602
6.11读文件602
6.11.1编程接口602
6.11.2技术原理603
6.12写文件606
6.12.1编程接口606
6.12.2技术原理607
6.13文件回写610
6.13.1编程接口610
6.13.2技术原理610
6.14DAX618
6.14.1使用方法618
6.14.2技术原理618
6.15常用的文件系统类型621
结束语622

内容摘要
本书基于4.x版本的Linux内核,介绍了Linux内核的若干关键子系统的技术原理。本书主要内容包括内核的引导过程、内核管理和调度进程的技术原理、内核管理虚拟内存和物理内存的技术原理、内核处理异常和中断的技术原理,以及系统调用的实现方式等。此外,本书还详细讲解了内核实现的各种保护临界区的互斥技术,以及内核的文件系统。本书内容丰富,深入浅出,通过大量的图例来描述数据结构之间的关系和函数的执行流程,并结合代码分析,引导读者阅读和理解内核源代码。

主编推荐
  

媒体评论
  

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP