第一百章:操作系统总装
复习
- 操作系统已分别处理启动、进程、内存、设备、文件和权限。
TL;DR
- 操作系统是一段率先启动、长期管理共享硬件的特殊软件。
- 它以抽象、虚拟化和保护,让大量程序能够安全共存。
正文
按下电源后,固件与引导程序把内核送进内存。内核建立特权边界,让普通程序通过系统调用请求服务;它把静态程序变成进程,调度线程轮流或并行使用 CPU;它用页表、缓存和缺页机制给每个进程一片看似私有的内存。
当程序读文件时,文件系统把名字、目录、缓存和设备控制器串起来;当多个人共用机器时,身份和权限决定每个请求能走到哪里。每个机制都只是“再加一层”,合在一起却让裸机上的孤立程序成为一个可以长期运行、容错并共享的系统。
这台计算机已经能很好地管理自己。但世界上还有别的计算机:若程序想取得另一台机器上的数据,操作系统该怎样把这段遥远的路连接起来?下一部分从一根传送 0 和 1 的线开始。
思考题
系统调用、页表和文件系统三者共同解决了什么问题?
小结
- 启动使内核首先获得控制权。
- 进程、调度和内存虚拟化组织计算资源。
- 驱动、文件系统与权限组织设备和持久数据。
思考题答案(仅供参考)
它们都把共享而复杂的硬件资源变成有边界、可供普通程序安全使用的服务。
协议
本文采用 CC BY-NC-SA 4.0 协议发布。