独辟蹊径品内核

独辟蹊径品内核
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2009-08
版次: 1
ISBN: 9787121085154
定价: 65.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 482页
字数: 804千字
正文语种: 简体中文
55人买过
  •   《独辟蹊径品内核:Linux内核源代码导读》根据最新的2.6.24内核为基础。在讲述方式上,《独辟蹊径品内核:Linux内核源代码导读》注重实例分析,尽量在讨论“如何做”的基础上,深入讨论为什么要这么做,从而实现《独辟蹊径品内核:Linux内核源代码导读》的写作宗旨:“授人以渔”。在内容安排上,《独辟蹊径品内核:Linux内核源代码导读》包含以下章节x86硬件基础;基础知识;Linux内核Makefile分析;Linux内核启动;内存管理;中断和异常处理;系统调用;信号机制在类UNIX系统中;时钟机制;进程管理;调度器;文件系统;常用内核分析方法。
      《独辟蹊径品内核:Linux内核源代码导读》适合初、中级Linux用户、从事内核相关开发的从业人员,也可以作为各类院校相关专业的教材及Linux培训班的教材,也可作为Linux内核学习的专业参考书。   李云华,是一名内核技术的狂热爱好者,长期从事操作系统内核、计算机网络、设备驱动程序、以及嵌入系统方面的开发和研究。拥有丰富的设备驱动开发、网络优化、内核及驱动移植、嵌入式系统构建等方面的开发经验。对Windows内核驱动及Linux内核驱动均有丰富的开发经验及心得体会。 第1章x86硬件基础1
    1.1保护模式1
    1.1.1分页机制1
    1.1.2分段机制7
    1.2系统门13
    1.3x86的寄存器14
    1.4典型的PC系统结构简介16

    第2章基础知识18
    2.1AT&T与Intel汇编语法比较18
    2.2gcc内嵌汇编20
    2.3同步与互斥25
    2.3.1原子操作25
    2.3.2信号量27
    2.3.3自旋锁29
    2.3.4RCU机制35
    2.3.5percpu变量39
    2.4内存屏障41
    2.4.1编译器引起的内存屏障41
    2.4.2缓存引起的内存屏障44
    2.4.3乱序执行引起的内存屏障47
    2.5高级语言的函数调用规范49

    第3章Linux内核Makefile分析52
    3.1Linux内核编译概述52
    3.2内核编译过程分析54
    3.3内核链接脚本分析62

    第4章Linux内核启动65
    4.1BIOS启动阶段65
    4.2实模式setup阶段67
    4.3保护模式startup_3277
    4.4内核启动start_kernel()84
    4.5内核启动时的参数传递90
    4.5.1内核参数处理91
    4.5.2模块参数处理95

    第5章内存管理99
    5.1内存地址空间99
    5.1.1物理内存地址空间99
    5.1.2虚拟地址空间101
    5.2内存管理的基本数据结构104
    5.2.1物理内存页面描述符104
    5.2.2内存管理区106
    5.2.3非一致性内存管理108
    5.3内存管理初始化109
    5.3.1bootmemalloctor的初始化109
    5.3.2页表初始化115
    5.3.3内存管理结构的初始化118
    5.4内存的分配与回收127
    5.4.1伙伴算法127
    5.4.2SLUB分配器138

    第6章中断与异常处理152
    6.1中断的分类152
    6.2中断的初始化156
    6.2.1异常初始化156
    6.2.2中断的初始化160
    6.2.3中断请求服务队列的初始化167
    6.3中断与异常处理171
    6.3.1特权转换与堆栈变化171
    6.3.2中断处理172
    6.3.3异常处理177
    6.4软件中断与延迟函数180
    6.4.1softirq180
    6.4.2tasklet185
    6.5中断与异常返回187
    6.6中断优先级回顾191
    6.7关于高级可编程中断控制器192
    6.7.1APIC初始化193

    第7章信号机制199
    7.1信号机制的管理结构200
    7.2信号发送204
    7.3信号处理210

    第8章系统调用220
    8.1Libc和系统调用220

    第9章时钟机制226
    9.1clocksource对象227
    9.1.1clocksource概述227
    9.1.2clocksource初始化228
    9.2tickless机制232
    9.2.1tickless由来232
    9.2.2clockeventdevice对象概述234
    9.2.3clockeventdevice对象的初始化236
    9.3High-ResolutionTimers247
    9.3.1High-ResolutionTimers管理结构247
    9.3.2High-ResolutionTimers初始化252
    9.3.3High-ResolutionTimers操作258
    9.4时钟中断处理268
    9.4.1时钟维护276
    9.4.2进程时间信息统计281
    9.5软件定时器283
    9.5.1基本管理结构283
    9.5.2初始化284
    9.5.3注册与过期处理287

    第10章进程管理295
    10.1进程描述符296
    10.1.1进程状态297
    10.1.2进程标识299
    10.1.3进程的亲缘关系300
    10.1.4进程的内核态堆栈301
    10.1.5进程的虚拟内存布局302
    10.1.6进程的文件信息305
    10.2进程的建立306
    10.2.1建立子进程的task_struct对象308
    10.2.2子进程的内存区域315
    10.2.3子进程的内核态堆栈323
    10.2.40号进程的建立325
    10.3进程切换327
    10.4进程的退出331
    10.4.1do_exit函数331
    10.4.2task_struct结构的删除334
    10.4.3通知父进程335
    10.5do_wait()函数338
    10.6程序的加载344

    第11章调度器351
    11.1早期的调度器351
    11.2CFS调度器的虚拟时钟353
    11.3CFS调度器的基本管理结构357
    11.4CFS调度器对象359
    11.5CFS调度操作360
    11.5.1update_curr()函数360
    11.5.2scheduler_tick()函数362
    11.5.3put_prev_task_fair()函数364
    11.5.4pick_next_task()函数366
    11.5.5等待和唤醒操作368
    11.5.6nice系统调用373

    第12章文件系统376
    12.1Ext2的磁盘结构376
    12.2Ext2的内存结构385
    12.3虚拟文件系统的管理结构387
    12.3.1文件系统对象388
    12.3.2VFS的超级块389
    12.3.3VFS的inode结构400
    12.3.4VFS的文件对象406
    12.3.5VFS的目录对象409
    12.3.6VFS在进程中的文件结构412
    12.4文件系统的挂载413
    12.5路径定位425
    12.6文件打开与关闭441
    12.7文件读写449
    12.7.1缓冲区管理449
    12.7.2文件读写操作分析456

    第13章常用内核分析方法471
    13.1准确定位同名宏及结构体471
    13.2准确定位同名函数473
    13.3利用linkmap文件定位全局变量474
    13.4准确定位函数调用线索476
    13.5SystemTap在代码分析中的使用479
  • 内容简介:
      《独辟蹊径品内核:Linux内核源代码导读》根据最新的2.6.24内核为基础。在讲述方式上,《独辟蹊径品内核:Linux内核源代码导读》注重实例分析,尽量在讨论“如何做”的基础上,深入讨论为什么要这么做,从而实现《独辟蹊径品内核:Linux内核源代码导读》的写作宗旨:“授人以渔”。在内容安排上,《独辟蹊径品内核:Linux内核源代码导读》包含以下章节x86硬件基础;基础知识;Linux内核Makefile分析;Linux内核启动;内存管理;中断和异常处理;系统调用;信号机制在类UNIX系统中;时钟机制;进程管理;调度器;文件系统;常用内核分析方法。
      《独辟蹊径品内核:Linux内核源代码导读》适合初、中级Linux用户、从事内核相关开发的从业人员,也可以作为各类院校相关专业的教材及Linux培训班的教材,也可作为Linux内核学习的专业参考书。
  • 作者简介:
      李云华,是一名内核技术的狂热爱好者,长期从事操作系统内核、计算机网络、设备驱动程序、以及嵌入系统方面的开发和研究。拥有丰富的设备驱动开发、网络优化、内核及驱动移植、嵌入式系统构建等方面的开发经验。对Windows内核驱动及Linux内核驱动均有丰富的开发经验及心得体会。
  • 目录:
    第1章x86硬件基础1
    1.1保护模式1
    1.1.1分页机制1
    1.1.2分段机制7
    1.2系统门13
    1.3x86的寄存器14
    1.4典型的PC系统结构简介16

    第2章基础知识18
    2.1AT&T与Intel汇编语法比较18
    2.2gcc内嵌汇编20
    2.3同步与互斥25
    2.3.1原子操作25
    2.3.2信号量27
    2.3.3自旋锁29
    2.3.4RCU机制35
    2.3.5percpu变量39
    2.4内存屏障41
    2.4.1编译器引起的内存屏障41
    2.4.2缓存引起的内存屏障44
    2.4.3乱序执行引起的内存屏障47
    2.5高级语言的函数调用规范49

    第3章Linux内核Makefile分析52
    3.1Linux内核编译概述52
    3.2内核编译过程分析54
    3.3内核链接脚本分析62

    第4章Linux内核启动65
    4.1BIOS启动阶段65
    4.2实模式setup阶段67
    4.3保护模式startup_3277
    4.4内核启动start_kernel()84
    4.5内核启动时的参数传递90
    4.5.1内核参数处理91
    4.5.2模块参数处理95

    第5章内存管理99
    5.1内存地址空间99
    5.1.1物理内存地址空间99
    5.1.2虚拟地址空间101
    5.2内存管理的基本数据结构104
    5.2.1物理内存页面描述符104
    5.2.2内存管理区106
    5.2.3非一致性内存管理108
    5.3内存管理初始化109
    5.3.1bootmemalloctor的初始化109
    5.3.2页表初始化115
    5.3.3内存管理结构的初始化118
    5.4内存的分配与回收127
    5.4.1伙伴算法127
    5.4.2SLUB分配器138

    第6章中断与异常处理152
    6.1中断的分类152
    6.2中断的初始化156
    6.2.1异常初始化156
    6.2.2中断的初始化160
    6.2.3中断请求服务队列的初始化167
    6.3中断与异常处理171
    6.3.1特权转换与堆栈变化171
    6.3.2中断处理172
    6.3.3异常处理177
    6.4软件中断与延迟函数180
    6.4.1softirq180
    6.4.2tasklet185
    6.5中断与异常返回187
    6.6中断优先级回顾191
    6.7关于高级可编程中断控制器192
    6.7.1APIC初始化193

    第7章信号机制199
    7.1信号机制的管理结构200
    7.2信号发送204
    7.3信号处理210

    第8章系统调用220
    8.1Libc和系统调用220

    第9章时钟机制226
    9.1clocksource对象227
    9.1.1clocksource概述227
    9.1.2clocksource初始化228
    9.2tickless机制232
    9.2.1tickless由来232
    9.2.2clockeventdevice对象概述234
    9.2.3clockeventdevice对象的初始化236
    9.3High-ResolutionTimers247
    9.3.1High-ResolutionTimers管理结构247
    9.3.2High-ResolutionTimers初始化252
    9.3.3High-ResolutionTimers操作258
    9.4时钟中断处理268
    9.4.1时钟维护276
    9.4.2进程时间信息统计281
    9.5软件定时器283
    9.5.1基本管理结构283
    9.5.2初始化284
    9.5.3注册与过期处理287

    第10章进程管理295
    10.1进程描述符296
    10.1.1进程状态297
    10.1.2进程标识299
    10.1.3进程的亲缘关系300
    10.1.4进程的内核态堆栈301
    10.1.5进程的虚拟内存布局302
    10.1.6进程的文件信息305
    10.2进程的建立306
    10.2.1建立子进程的task_struct对象308
    10.2.2子进程的内存区域315
    10.2.3子进程的内核态堆栈323
    10.2.40号进程的建立325
    10.3进程切换327
    10.4进程的退出331
    10.4.1do_exit函数331
    10.4.2task_struct结构的删除334
    10.4.3通知父进程335
    10.5do_wait()函数338
    10.6程序的加载344

    第11章调度器351
    11.1早期的调度器351
    11.2CFS调度器的虚拟时钟353
    11.3CFS调度器的基本管理结构357
    11.4CFS调度器对象359
    11.5CFS调度操作360
    11.5.1update_curr()函数360
    11.5.2scheduler_tick()函数362
    11.5.3put_prev_task_fair()函数364
    11.5.4pick_next_task()函数366
    11.5.5等待和唤醒操作368
    11.5.6nice系统调用373

    第12章文件系统376
    12.1Ext2的磁盘结构376
    12.2Ext2的内存结构385
    12.3虚拟文件系统的管理结构387
    12.3.1文件系统对象388
    12.3.2VFS的超级块389
    12.3.3VFS的inode结构400
    12.3.4VFS的文件对象406
    12.3.5VFS的目录对象409
    12.3.6VFS在进程中的文件结构412
    12.4文件系统的挂载413
    12.5路径定位425
    12.6文件打开与关闭441
    12.7文件读写449
    12.7.1缓冲区管理449
    12.7.2文件读写操作分析456

    第13章常用内核分析方法471
    13.1准确定位同名宏及结构体471
    13.2准确定位同名函数473
    13.3利用linkmap文件定位全局变量474
    13.4准确定位函数调用线索476
    13.5SystemTap在代码分析中的使用479
查看详情
相关图书 / 更多
独辟蹊径品内核
独辟蹊径的智慧
李珂 编;王江丽
独辟蹊径品内核
独辟蹊径:迈向健康的另一条路
陈丽 著
独辟蹊径品内核
独辟蹊径的编程思维——“拿来主义”编程
李瑞民 著