深入Linux内核架构:全球开源社区集体智慧结晶,领略Linux内核的绝美风光
品相如图以图为准!店铺里是有实拍图的哦!
¥
30
2.0折
¥
149
九品
仅1件
作者[德]莫尔勒 著;郭旭 译
出版社人民邮电出版社
出版时间2010-06
版次1
装帧平装
货号D7
上书时间2024-11-06
商品详情
- 品相描述:九品
图书标准信息
-
作者
[德]莫尔勒 著;郭旭 译
-
出版社
人民邮电出版社
-
出版时间
2010-06
-
版次
1
-
ISBN
9787115227430
-
定价
149.00元
-
装帧
平装
-
开本
16开
-
纸张
胶版纸
-
页数
1038页
-
字数
1852千字
-
正文语种
简体中文
-
原版书名
Professional Linux Kernel Architecture
-
丛书
图灵程序设计丛书·Linux/UNIX系列
- 【内容简介】
-
《深入Linux内核架构》讨论了Linux内核的概念、结构和实现。主要内容包括多任务、调度和进程管理,物理内存的管理以及内核与相关硬件的交互,用户空间的进程如何访问虚拟内存,如何编写设备驱动程序,模块机制以及虚拟文件系统,Ext文件系统属性和访问控制表的实现方式,内核中网络的实现,系统调用的实现方式,内核对时间相关功能的处理,页面回收和页交换的相关机制以及审计的实现等。此外,《深入Linux内核架构》借助内核源代码中关键的部分进行讲解,帮助读者掌握重要的知识点,从而在运用中充分展现Linux系统的魅力。《深入Linux内核架构》适合Linux内核爱好者阅读。
- 【作者简介】
-
莫尔勒(WoflgangMauerer),资深Linux专家,有数十年Linux开发经验。从1997年最初发表关于内核的系列文章开始,他就醉心于解释Linux核心的内部机制、编写相关的文档,此外,他还著有LaTex排版方面的图书,其撰写的大量文章已经被释译成7种语言。
- 【目录】
-
第1章简介和概述1
1.1内核的任务2
1.2实现策略2
1.3内核的组成部分3
1.3.1进程、进程切换、调度3
1.3.2UNIX进程4
1.3.3地址空间与特权级别6
1.3.4页表9
1.3.5物理内存的分配11
1.3.6计时13
1.3.7系统调用13
1.3.8设备驱动程序、块设备和字符设备14
1.3.9网络14
1.3.10文件系统14
1.3.11模块和热插拔15
1.3.12缓存16
1.3.13链表处理16
1.3.14对象管理和引用计数17
1.3.15数据类型20
1.3.16本书的局限性22
1.4为什么内核是特别的23
1.5行文注记23
1.6小结27
第2章进程管理和调度28
2.1进程优先级28
2.2进程生命周期30
2.3进程表示32
2.3.1进程类型37
2.3.2命名空间37
2.3.3进程ID号43
2.3.4进程关系49
2.4进程管理相关的系统调用50
2.4.1进程复制50
2.4.2内核线程62
2.4.3启动新程序63
2.4.4退出进程66
2.5调度器的实现67
2.5.1概观67
2.5.2数据结构69
2.5.3处理优先级74
2.5.4核心调度器79
2.6完全公平调度类84
2.6.1数据结构85
2.6.2CFS操作85
2.6.3队列操作89
2.6.4选择下一个进程91
2.6.5处理周期性调度器92
2.6.6唤醒抢占93
2.6.7处理新进程93
2.7实时调度类94
2.7.1性质94
2.7.2数据结构95
2.7.3调度器操作96
2.8调度器增强97
2.8.1SMP调度97
2.8.2调度域和控制组101
2.8.3内核抢占和低延迟相关工作102
2.9小结106
第3章内存管理107
3.1概述107
3.2(N)UMA模型中的内存组织109
3.2.1概述109
3.2.2数据结构111
3.3页表123
3.3.1数据结构124
3.3.2页表项的创建和操作129
3.4初始化内存管理129
3.4.1建立数据结构130
3.4.2特定于体系结构的设置135
3.4.3启动过程期间的内存管理153
3.5物理内存的管理159
3.5.1伙伴系统的结构159
3.5.2避免碎片161
3.5.3初始化内存域和结点数据结构167
3.5.4分配器API172
3.5.5分配页177
3.5.6释放页192
3.5.7内核中不连续页的分配195
3.5.8内核映射201
3.6slab分配器205
3.6.1备选分配器206
3.6.2内核中的内存管理207
3.6.3slab分配的原理209
3.6.4实现212
3.6.5通用缓存226
3.7处理器高速缓存和TLB控制228
3.8小结230
第4章进程虚拟内存231
4.1简介231
4.2进程虚拟地址空间231
4.2.1进程地址空间的布局232
4.2.2建立布局234
4.3内存映射的原理237
4.4数据结构238
4.4.1树和链表238
4.4.2虚拟内存区域的表示239
4.4.3优先查找树241
4.5对区域的操作244
4.5.1将虚拟地址关联到区域245
4.5.2区域合并246
4.5.3插入区域247
4.5.4创建区域248
4.6地址空间250
4.7内存映射251
4.7.1创建映射251
4.7.2删除映射253
4.7.3非线性映射254
4.8反向映射257
4.8.1数据结构258
4.8.2建立逆向映射259
4.8.3使用逆向映射259
4.9堆的管理261
4.10缺页异常的处理263
4.11用户空间缺页异常的校正268
4.11.1按需分配/调页269
4.11.2匿名页271
4.11.3写时复制271
4.11.4获取非线性映射272
4.12内核缺页异常272
4.13在内核和用户空间之间复制数据274
4.14小结276
第5章锁与进程间通信277
5.1控制机制277
5.1.1竞态条件277
5.1.2临界区278
5.2内核锁机制279
5.2.1对整数的原子操作280
5.2.2自旋锁282
5.2.3信号量283
5.2.4RCU机制284
5.2.5内存和优化屏障286
5.2.6读者/写者锁287
5.2.7大内核锁288
5.2.8互斥量288
5.2.9近似的per-CPU计数器290
5.2.10锁竞争与细粒度锁291
5.3SystemV进程间通信292
5.3.1SystemV机制292
5.3.2信号量292
5.3.3消息队列300
5.3.4共享内存303
5.4其他IPC机制303
5.4.1信号303
5.4.2管道和套接字310
5.5小结311
第6章设备驱动程序312
6.1I/O体系结构312
6.2访问设备316
6.2.1设备文件316
6.2.2字符设备、块设备和其他设备317
6.2.3使用ioctl进行设备寻址319
6.2.4主从设备号的表示320
6.2.5注册321
6.3与文件系统关联324
6.3.1inode中的设备文件成员324
6.3.2标准文件操作325
6.3.3用于字符设备的标准操作325
6.3.4用于块设备的标准操作325
6.4字符设备操作326
6.4.1表示字符设备326
6.4.2打开设备文件326
6.4.3读写操作328
6.5块设备操作329
6.5.1块设备的表示330
6.5.2数据结构331
6.5.3向系统添加磁盘和分区338
6.5.4打开块设备文件339
6.5.5请求结构341
6.5.6BIO343
6.5.7提交请求345
6.5.8I/O调度350
6.5.9ioctl的实现352
6.6资源分配353
6.6.1资源管理353
6.6.2I/O内存355
6.6.3I/O端口357
6.7总线系统358
6.7.1通用驱动程序模型358
6.7.2PCI总线363
6.7.3USB370
6.8小结376
第7章模块377
7.1概述377
7.2使用模块378
7.2.1添加和移除378
7.2.2依赖关系380
7.2.3查询模块信息381
7.2.4自动加载382
7.3插入和删除模块384
7.3.1模块的表示385
7.3.2依赖关系和引用389
7.3.3模块的二进制结构391
7.3.4插入模块396
7.3.5移除模块403
7.4自动化与热插拔404
7.4.1kmod实现的自动加载404
7.4.2热插拔405
7.5版本控制408
7.5.1校验和方法408
7.5.2版本控制函数411
7.6小结412
第8章虚拟文件系统413
8.1文件系统类型413
8.2通用文件模型414
8.2.1inode415
8.2.2链接416
8.2.3编程接口416
8.2.4将文件作为通用接口417
8.3VFS的结构417
8.3.1结构概观418
8.3.2inode419
8.3.3特定于进程的信息423
8.3.4文件操作427
8.3.5目录项缓存431
8.4处理VFS对象436
8.4.1文件系统操作436
8.4.2文件操作450
8.5标准函数456
8.5.1通用读取例程457
8.5.2失效机制459
8.5.3权限检查461
8.6小结463
第9章Ext文件系统族464
9.1简介464
9.2Ext2文件系统465
9.2.1物理结构465
9.2.2数据结构470
9.2.3创建文件系统484
9.2.4文件系统操作485
9.3Ext3文件系统507
9.3.1概念508
9.3.2数据结构509
9.4小结511
第10章无持久存储的文件系统512
10.1proc文件系统512
10.1.1/proc的内容513
10.1.2数据结构519
10.1.3初始化522
10.1.4装载proc文件系统523
10.1.5管理/proc数据项525
10.1.6读取和写入信息528
10.1.7进程相关的信息530
10.1.8系统控制机制535
10.2简单的文件系统542
10.2.1顺序文件542
10.2.2用libfs编写文件系统546
10.2.3调试文件系统547
10.2.4伪文件系统549
10.3sysfs549
10.3.1概述550
10.3.2数据结构550
10.3.3装载文件系统554
10.3.4文件和目录操作556
10.3.5向sysfs添加内容562
10.4小结564
第11章扩展属性和访问控制表565
11.1扩展属性565
11.1.1到虚拟文件系统的接口566
11.1.2Ext3中的实现570
11.1.3Ext2中的实现576
11.2访问控制表577
11.2.1通用实现577
11.2.2Ext3中的实现580
11.2.3Ext2中的实现585
11.3小结585
……
第12章网络586
第13章系统调用655
第14章内核活动678
第15章时间管理714
第16章页缓存和块缓存761
第17章数据同步793
第18章页面回收和页交换821
第19章审计882
附录A体系结构相关知识899
附录B使用源代码919
附录C有关C语言的注记947
附录D系统启动985
附录EELF二进制格式
附录F内核开发过程
参考文献
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价