上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.3 内核组件
现在你已经了解了CPU架构的基础知识,是时候深入研究内核了。虽然Linux内核是一个整体(也就是说,讨论的所有组件都是单个二进制文件的一部分),但在代码库中有一些功能区域,我们可以识别并赋予它们专门的职责。
正如我们在2.1节中所讨论的,内核位于硬件和你想要运行的应用程序之间。你在内核代码库中找到的主要功能块如下:
•进程管理,例如根据可执行文件启动进程。
•内存管理,例如为进程分配内存或将文件映射到内存。
•网络,例如管理网络接口或提供网络栈。
•提供文件管理和支持文件创建和删除的文件系统。
•字符设备和设备驱动程序的管理。
这些功能组件通常具有相互依赖关系,确保内核开发人员的座右铭(https://oreil. ly/6YDeF)“内核永远不会破坏用户空间”是一项真正具有挑战性的任务。
在此基础上,让我们进一步了解内核组件。