说明
本文是关于《深入Linux内核架构》的读书笔记,对应的书是深入Linux内核架构 (豆瓣)。
简介和概述
本章主要分三个部分:内核的任务,实现策略和组成部分。
内核的任务
其实也没有什么好说的:
实现策略
这里的实现策略指的是操作系统的实现策略,分为两种:
关于微内核(Microkernel)和宏内核(Monolithic Kernel)的差异,如下图所示:
关于宏内核还是微内核的讨论不在本文的范围,这里需要知道的是Linux用的是宏内核,并且Linux也有模块的概念,使它具有一些微内核的优点。
关于模块本身也是一个很重要的概念,后续还会详细介绍(《深入Linux内核架构》第七章)。
内核的组成部分
内核的组成部分如下图所示:
这里主要介绍右边的5种,其中也还包括另外的一些组成部分。
需要注意本文主要是概述,所以每部分的介绍都是非常简单的。
进程管理
关于命名空间,在“进程”相关的章节还有说明(P37),如下所示:
关于命名空间还有很多不了解的内容。
后续应该还会补充或者在其它文章中介绍。
内存管理
内存管理涉及三个部分:
首先介绍虚拟地址:
特权级别:
物理地址和虚拟地址:
系统调用
系统调用:
设备驱动
设备驱动:
文件系统
文件系统: