本专栏是在学习LMOS的《操作系统实战45讲》时的学习笔记,以检验学习效果。
本节因为是理论知识,所以内容主要是摘抄的《操作系统实战45讲》。
内核功能
内核是计算机资源的管理者,其目的是为了让应用程序更好地使用资源。
计算机资源分为硬件资源和软件资源。
硬件资源有:
- 总线,负责连接各种其它设备,是其它设备工作的基础。
- CPU,即中央处理器,负责执行程序和处理数据运算。
- 内存,负责储存运行时的代码和数据。
- 硬盘,负责长久储存用户文件数据。
- 网卡,负责计算机与计算机之间的通信。
- 显卡,负责显示工作。
- 各种 I/O 设备,如显示器,打印机,键盘,鼠标等。
软件资源有:文件、程序(进程)等。
宏内核结构
简单来说,宏内核结构就是把上面管理所有计算机资源的代码都编译成一个大的程序,支持所有功能,并向用户提供一些接口。这个大程序在特权模式下运行。如下图所示:
上图的宏内核结构有明显的缺点,因为它没有模块化,没有扩展性、没有移植性,高度耦合在一起,一旦其中一个组件有漏洞,内核中所有的组件可能都会出问题。开发一个新的功能也得重新编译、链接、安装内核。其实现在这种原始的宏内核结构已经没有人用了。
这种宏内核唯一的优点是性能很好&#