一、内核
内核是应用连接硬件设备的桥梁
1.内核的能力
现代操作系统,内核一般会提供 4 个基本能力:
- 管理进程、线程,决定哪个进程、线程使用 CPU,也就是进程调度的能力;
- 管理内存,决定内存的分配和回收,也就是内存管理的能力;
- 管理硬件设备,为进程与硬件设备之间提供通信能力,也就是硬件通信能力;
- 提供系统调用,如果应用程序要运行更高权限运行的服务,那么就需要有系统调用,它是用户程序与操作系统之间的接口。
2.内核如何工作
二、Linux 的设计
Linux 内核设计的理念主要有这几个点:
- MultiTask,多任务
- SMP,对称多处理
- ELF,可执行文件链接格式
- Monolithic Kernel,宏内核
三、Windows的设计
- MultiTask,多任务
- SMP,对称多处理
- PE,可移植执行文件
- 混合型内核,是宏内核和微内核的结合体
四、参考
小林 coding