Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

第一百章:操作系统总装

复习

  • 操作系统已分别处理启动、进程、内存、设备、文件和权限。

TL;DR

  • 操作系统是一段率先启动、长期管理共享硬件的特殊软件。
  • 它以抽象、虚拟化和保护,让大量程序能够安全共存。

正文

  按下电源后,固件与引导程序把内核送进内存。内核建立特权边界,让普通程序通过系统调用请求服务;它把静态程序变成进程,调度线程轮流或并行使用 CPU;它用页表、缓存和缺页机制给每个进程一片看似私有的内存。

  当程序读文件时,文件系统把名字、目录、缓存和设备控制器串起来;当多个人共用机器时,身份和权限决定每个请求能走到哪里。每个机制都只是“再加一层”,合在一起却让裸机上的孤立程序成为一个可以长期运行、容错并共享的系统。

  这台计算机已经能很好地管理自己。但世界上还有别的计算机:若程序想取得另一台机器上的数据,操作系统该怎样把这段遥远的路连接起来?下一部分从一根传送 0 和 1 的线开始。

思考题

系统调用、页表和文件系统三者共同解决了什么问题?

小结

  • 启动使内核首先获得控制权。
  • 进程、调度和内存虚拟化组织计算资源。
  • 驱动、文件系统与权限组织设备和持久数据。

思考题答案(仅供参考)

  它们都把共享而复杂的硬件资源变成有边界、可供普通程序安全使用的服务。

协议

本文采用 CC BY-NC-SA 4.0 协议发布。