操作系统教程
本文档是计算机科学中的操作系统学科教程。
推荐阅读顺序
本教程与 数据结构 交叉阅读效果更佳。数据结构讲述容器的设计与实现思想,操作系统揭示这些思想背后的硬件依据。
| 阶段 | 章节 | 前置知识 | 建议学时 |
|---|---|---|---|
| 1 | A_操作系统概述 | 无 | 2h |
| 2 | B_进程管理 | A | 4h |
| 3 | C_线程与并发 | B | 3h |
| 4 | D_CPU调度 | B, C | 3h |
| 5 | E_同步与死锁 | C | 4h |
| 6 | F_内存管理 | A, B | 5h |
| 7 | G_内存分配器 | F | 3h |
| 8 | H_文件系统 | A | 3h |
| 9 | I_进程间通信 | B, C | 2h |
| 10 | J_IO管理 | A, B, F | 4h |
与本教程体系其他模块的链接
本模块是 容器 中”虚拟内存与缺页中断”和”malloc 实现原理”的完整展开。阅读容器章节时遇到底层概念,可跳转到此处查阅细节。
| 你在数据结构中读到的概念 | 对应的操作系统章节 | 链接 |
|---|---|---|
| 虚拟内存、缺页中断、页表 | F_内存管理 | 虚拟地址→物理地址映射、页表结构、缺页中断流程 |
| malloc / realloc / free 原理 | G_内存分配器 | ptmalloc架构、sbrk vs mmap、碎片类型 |
| 函数调用栈、栈帧 | B_进程管理 | 进程内存布局、栈段、上下文切换 |
| CPU 任务调度(队列的应用) | D_CPU调度 | 就绪队列、调度算法 |
| 多线程与容器安全 | C_线程与并发 | 线程模型、原子操作、缓存一致性 |
| 文件读写、磁盘性能、DMA | J_IO管理 | 磁盘调度、缓冲、DMA控制器、SPOOLing |