你是否曾经奇怪Linux为何如此高效?你是否想知道其性能对于你的特殊的应用软件是否起作用?你曾经试图浏览它的内核源代码吗?如果你对上述问题中的任一个回答“是”,那么这本书就是为你而写的。《深入理解Linux内核》以有价值的和有意义的观察,引导你遨游Linux内核世界。\r\n 虽然Linux经常被看作计算机高手偶然的实验工具,但它已逐渐成为许多组织机构中的关键部分,也成为展示高超编程技巧的平台。它综合了许多先进的操作系统的概念,并且在广泛的应用领域证明了其自身的极端健壮性和高效性。\r\n 读了这本书之后,你就会明白在什么情况下Linux具有最佳的性能,以及它如何面对挑战,在各种环境中提供进程调度、文件访问和内存管理时的优良的系统响应。作者通过解释其重要性来引入每一个题目,并将内核操作与Unix程序员和用户熟悉的系统调用或实用程序联系起来。\r\n 主要题目包括:\r\n *内存管理,包括文件缓冲、进程交换和直接内存访问(DMA)\r\n *虚拟文件系统和Ex2文件系统\r\n *信号、中断和设备驱动程序的主要接口\r\n *定时\r\n *内核中的同步\r\n *进程间通信(IPC)\r\n *程序的执行
第一章绪论\r\nLinux与其他类Unix内核的比较\r\n硬件的依赖性\r\nLinux版本\r\n操作系统的基本概念\r\nUnix 文件系统概述\r\nUnix内核概述\r\n第二章内存寻址\r\n内存地址 \r\n硬件的分段单元 \r\nLinux中的段\r\n硬件的分页单元\r\nLinux的分页\r\n对Linux 2.4的展望\r\n第三章进程\r\n进程描述符\r\n进程切换\r\n创建进程\r\n撤消进程\r\n对Linux 2.4的展望\r\n第四章中断和异常\r\n中断信号的作用\r\n中断和异常\r\n中断和异常处理程序的嵌套执行\r\n初始化中断描述符表\r\n异常处理\r\n中断处理\r\n从中断和异常返回\r\n对Linux 2.4的展望\r\n第五章定时测量\r\n硬时钟\r\n定时中断处理程序\r\nPIT中断服务例程\r\nTIMER_BH下半部分函数\r\n与定时测量相关的系统调用\r\n对Linux 2.4的展望\r\n第六章内存管理\r\n页框管理 \r\n内存区管理\r\n非连续内存区管理\r\n对Linux 2.4的展望\r\n第七章进程地址空间\r\n进程的地址空间\r\n内存描述符 \r\n线性区 \r\n缺页异常处理程序\r\n创建和删除进程的地址空间 \r\n堆的管理\r\n对Linux 2.4的展望\r\nPOSIX API和系统调用\r\n第八章系统调用\r\n系统调用处理程序及服务例程\r\n封装例程\r\n对Linux 2.4的展望\r\n第九章信号\r\n信号的作用\r\n发送信号\r\n接收信号\r\n实时信号\r\n与信号处理相关的系统调用\r\n对Linux 2.4的展望\r\n调度策略\r\n第十章进程调度\r\n调度算法\r\n与调度相关的系统调用\r\n对Linux 2.4的展望\r\n第十一章内核同步\r\n内核控制路径\r\n同步技术\r\nSMP体系结构\r\nLinux/SMP内核\r\n对Linux 2.4的展望\r\n虚拟文件系统的作用\r\n第十二章虚拟文件系统\r\nVFS的数据结构\r\n文件系统安装\r\n路径名的查找\r\nVFS系统调用的实现\r\n文件加锁\r\n对Linux 2.4的展望\r\n第十三章管理I/O设备\r\nI/O体系结构\r\n与I/O设备相关的文件\r\n设备驱动程序\r\n字符设备的处理\r\n块设备的处理\r\n页I/O操作\r\n对Linux 2.4的展望\r\n第十四章磁盘高速缓存\r\n缓冲区高速缓存\r\n页高速缓存\r\n对Linux 2.4的展望\r\n第十五章访问正规文件\r\n读写正规文件\r\n内存映射\r\n对Linux 2.4的展望\r\n第十六章交换:释放内存的方法\r\n什么是交换?\r\n交换区\r\n交换高速缓存\r\n传送交换页\r\n页换出\r\n页换入\r\n释放页框\r\n对Linux 2.4的展望\r\n第十七章Ext2文件系统\r\n一般特性\r\n磁盘数据结构\r\n内存数据结构\r\n创建文件系统\r\nExt2的方法\r\n磁盘空间管理\r\n读写Ext2正规文件\r\n对Linux 2.4的展望\r\n第十八章进程通信\r\n管道\r\nFIFO\r\nSystem V IPC\r\n对Linux 2.4的展望\r\n第十九章程序的执行\r\n可执行文件\r\n可执行格式\r\n执行域\r\nexec类函数\r\n对Linux 2.4的展望\r\n附录一\r\n附录二\r\n附录三\r\n参考书目\r\n\r\n源代码索引\r\n词汇表