COMP3230 序言

欢迎! 这是一个记录了HKU的COMP3230:操作系统概论 课程内容的笔记本。与以往不同,这次的笔记内容会相比之前更精简,更简明扼要直入主题。

Chapter 1: 简单入门

什么是操作系统?操作系统 (Operating System, OS) 是一个程序,它的作用是控制其他应用程序的运行,有点像一个管家,负责管理其他程序如何使用机器。 操作系统不是什么神秘的漂浮在CPU上面的东西,反而我们需要强调,操作系统本质上就是个...

计算机/操作系统

Chapter 2: 进程

这一章我们聚焦到进程上。先把 “进程到底是什么”、以及它手里握着哪些内存(地址空间)讲清楚,再看它从生到死会经历哪些状态;之后是 OS 用来记录一个进程的数据结构,也就是 PCB、进程表和进程队列;最后展开进程操作,以及进程之间互相通知用的信号。 ...

计算机/操作系统

Chapter 2A: 基础C语言与Linux

这节 Tutorial 其实没讲多少新的 OS 理论。前半段是把 Lecture 里面的 Process、System Call、Signal 这些东西重新串了一遍,后半段大半时间都在确认一件事:我们至少有足够的 Linux 和 C 语言基础,不至于...

计算机/操作系统

Chapter 3: CPU 虚拟化

之前我们已经知道,一个 Process 本质上就是正在执行中的 Program。但一台单核 CPU 在某一瞬间实际上只能执行一个 Process,于是马上会出现一个问题:如果系统里同时有几十个 Process,为什么我们平时完全感觉不到“只有一个人在...

计算机/操作系统

Chapter 4: 进程调度

上一章我们解决了 CPU 怎么从 Process A 真正切换到 Process B:Context Switch 提供 Mechanism,保存 A 的 Execution Context,再恢复 B 的 Context。但是会切还不够,因为 Ke...

计算机/操作系统