目录
摘要
这篇文章主要总结我读的这本书的第一章的内容。距离上次写计划已经过了2周,因为写论文和懒,才读完Introduction这一章。在这里我主要(1)回顾第一章大概讲了什么内容,(2)记录哪些内容是我之前不太了解的,以便于后面重点学习。
回顾主要内容
这一章的主要内容包含以下三点:
- OS 的基本概念:主要从design的角度描述Unix/Linux的一些概念,比如进程,微内核,等等
- Unix 的文件系统:主要讲文件系统的概念
- Linux 内核概述:包含了OS的几大部分:
- CPU 的 User/Kernel mode
- 进程的实现,进程间的同步(synchronization)
- Inter process communication (IPC)
- 内存管理
- 硬件驱动
重点学习的内容
这里我把我不熟悉的每一个知识点作为一个小标题记录下来,按照这一章的顺序。
Kernel architecture
理论上kernel的架构分为 monolithic 和 micro kernel 两种。第一种架构是将所有的程序都载入到当前的 kernel 进程中运行。第二种是只将一些核心功能(例如 进程scheduler, 同步机制)载入进程,把其他功能(例如 内存allocator, 硬件驱动)在更高的一个layer与内核进行交互。