up md md md md md md md md md md md md md
返回上级
from - zero · operating-systems
应用程序看起来是在“自己运行”:
process - thread - cpu
一个 CPU 核心同一时刻通常只能执行一个执行流,但系统里可能有成百上千个任务。
system - calls
普通应用不能直接操作硬件,也不能直接修改内核数据结构。
memory - management
多个进程如何共享有限物理内存,又互不破坏?
concurrency - sync
并发让多个任务在同一时间段内推进,但只要它们共享可变状态,就会出现危险:
file - system
打开文件 读取内容 写入内容 关闭文件
io - models
很多程序慢,不是慢在 CPU 计算,而是慢在等 IO:
device - driver - interrupt
操作系统不仅管理 CPU 和内存,还要管理各种设备:
socket - network - stack
网络课讲协议,OS 课要讲:
ipc - signal
进程之间默认隔离,这保证安全,但也带来问题:
virtualization - container
现代系统里,一个物理机器上可能运行:
performance - debugging
操作系统知识最终要能落到排障:
README · operating-systems
操作系统研究的是:如何把有限、复杂、危险的硬件资源,包装成多个程序都能安全使用的抽象。