Linux内核精髓 ——精通Linux内核必会的75个绝技
内核是操作系统的核心,操作系统的基本功能都是由内核提供的。文件生成和数据包传输等也是通过内核的功能实现的。但这些都不是简单的任务。平时可能意识不到,但这其中确实包含了很多先进技术。例如,在文件系统方面,配置文件时尽量减少磁盘扫描,在网络方面,由于路由表的入口数量庞大,因此设计时尽量保证对系统整体影响较小的设计。在内存管理、进程管理方面也作出了很多努力。解读这种先进技术也是内核构建的魅力之一。
然而,最近的Linux所提供的并不只有基本功能。随着功能的不断发展,现在已经出现了很多特定领域的便捷功能和独特功能。即使是内核黑客也很少有人能够完全掌握。
本书从Linux内核的众多先进功能中选取了一些必备并且有趣的内容进行介绍,同时也对内部的运行机制和结构进行了阐述。此外,本书还介绍了熟练使用这些功能所需的工具、设置方法以及调整方法等。
省电就是其中一项内容。除了使用方法以外,本书还介绍了省电的理念、与硬件的关系等。此外,还提到了当前广受关注的虚拟化、资源管理、标准文件系统中所采用的ext4等已有功能和新功能。对于已有功能,本书结合最新的源码,介绍它的更改内容和新增功能。其中也包括文档中没有记载,且必须对内核内部有一定理解才能得知的信息,因此,即使是比较了解这个功能的人也可能会有新的发现。另外,本书还介绍了内核的相关工具,其中gcore在重要的系统中就是非常可靠的工具。
最新的Linux内核中安装了强大的追踪、概要分析功能,具备很多方便实用的功能。这些功能不仅能够很方便地达到预期的目的,而且对于分析内核功能也非常有用。甚至对于内核构建的高手也有一定帮助。
全书列举了非常多的实例,让读者更快地学会如何使用。对于想要熟练使用内核的读者来说,本书也是非常好的参考书。
本书还为想要了解Linux内核的读者以及读过本书后开始对Linux内核开发产生兴趣的读者,介绍了获取内核源码的方法和内核开发方法等内核构建入门所需的信息。我们希望读者能够通过本书更加了解Linux的世界。
在电脑刚刚诞生的时候,有一段时期人们认为“如果想要提高编程水平就查看UNIX代码”。因为最快的方式就是参考天才所编写的最先进的代码并进行模仿。而在阅读Linux内核的代码时,相信大家也会深有同感。
Linux内核是开源软件,无论是谁都可以参与开发。Linux内核的代码花费了大量的时间和精力来编写。各领域都由具有专业知识的维护人员进行长期的管理,从而得到不断的改进。基于电子邮件的开发也在不断进行,因此可以看到各种讨论,并了解到当前代码的发展历程。每次看到Linux内核的代码,都会让人感叹其中凝聚的智慧和努力,也感受到当时的辛苦。希望读者能够从本书开始接触Linux这个不一般的世界,诞生更多的内核高手。