专注于操作系统内核的实现
分类: IT业界
2014-09-25 09:35:24
经过一年的编写修订,终于完稿了,不过还没有找出版社,哈哈~~
这本书是关于操作系统内核实践方面的书籍,本书的最终目的是构建一个用于学习的操作系统内核,并工作在真正的物理机上。为了达到这一目的,本书大体上分为两部分:硬件部分和软件部分。
硬件部分首先分析了我们选择的平台,以及这个平台上的组件。对平台组件的分析是这样的:先使用概述的方式分析了一些平台的外围组件:如实时时钟、定时器、中断控制器、内存芯片、CPU、MMU等……让读者有个初步的印象,在写代码用到某个组件时再详述其内部编程细节。紧接着重点分析了CPU和MMU的细节,其实还有内存芯片,只是它比较简单,因为这三个部件是程序运行的基石。没有它们程序根本无法运行,所以在写代码之前必须详细的了解它们的细节。
软件部分首先分析了操作系统内核是干什么的,其中都有些什么组件,这些个组件分别是干什么的有什么作用。然后是如何设计操作系统架构并将这些重要的组件组合在一起,以及设计时需要注意些什么。最后介绍了构建操作系统的工具。接着介绍了C调用约定和基本的数据结构以及C数据结构在内存中的镜像。再就开始写代码完成这些组件了:初始化、内存管理、中断管理、设备管理、进程管理、文件系统、系统调用接口、应用程序库。对这些组件的介绍采用这种方式:一、介绍的是这个组件要完成什么功能,达到什么要求。二、详述这个组件必须要关注的硬件的细节,三、把我们的想法和设计归纳成数据结构。四、编写完成这些功能的代码。系统调用接口为了顾及读者们已有的知识体系,模拟了类UNIX调用接口,方便读者理解核心原理。