跳到正文

操作系统与系统实验课程总笔记

课程笔记

用对象、状态、时间线、实验和失败反查串联全课。

关联:全课程

《操作系统与系统实验》课程总笔记

全课主线

十二章依次为:从程序到内核:操作系统的责任边界、进程、线程与可观察状态、CPU调度:从队列到响应时间、同步、互斥与竞态推演、死锁、活锁与资源分配、内存管理与虚拟内存、文件系统:名字、块与崩溃一致性、I/O系统与驱动边界、保护、安全与可信执行、虚拟化与容器:隔离、复用和迁移、性能观测与系统化诊断、综合系统实验:构建可验证的小内核模型。全课只用一条方法主线:从现象出发,识别对象和保护边界;把机制画成状态、队列、表项和事件;用公式计算中间量;运行确定性实验;注入竞态、资源耗尽与崩溃;最后用指标和不变量反查。任何概念若不能沿这条主线解释,就还只是名词。

核心对象

进程把地址空间、凭据、打开资源和执行流组织成可调度容器;线程共享进程资源但保留独立寄存器、栈和调度状态。调度器在就绪队列选择执行者,同步原语约束共享状态迁移,死锁分析追踪资源占有和等待。虚拟内存通过页表与TLB翻译地址,文件系统通过目录项、inode、块和日志提供命名与持久化,I/O子系统经驱动、控制器、中断与DMA连接设备。

三条时间线

CPU时间线记录到达、调度、抢占、阻塞、唤醒和完成;内存时间线记录引用、TLB、页表、缺页、替换、写回与重启;持久化时间线记录数据、元数据、日志提交、写屏障与崩溃恢复。综合题先选主时间线,再把另外两条作为因果支线接入,不能把所有动作写成同一时刻“系统自动完成”。

实验与验收

代码实验从标准输入运行,至少四组内联测试,覆盖正常、边界、失败和回归。先让清晰参考模型通过,再优化;优化后逐输出比对。并发实验用事件交错和不变量说明模型边界,不能用不可复现的睡眠时序。每节单选、多选、计算必做,章节卷、期中、期末和实验专项使用独立题池。

复盘地图

遇到错题先判断它属于哪条证据链:特权边界题先标用户态、内核态与触发入口;进程并发题先标执行者、共享对象和首个冲突交错;调度题画就绪队列与甘特图;虚存题拆虚拟页号、页表项、页框和偏移;文件题画路径、目录项、inode、数据块及持久化顺序;I/O题区分请求完成墙钟时间与CPU实际忙碌时间;安全题写主体、客体、操作和策略来源。

每次复盘保留首个偏差而不是只抄正确答案。把错误编码成对象认错、状态跳步、单位混用、队列顺序、竞态遗漏、权限越界或崩溃假设。一周后更换数字、事件顺序和失败点重做;若仍能从状态与不变量推出结论,才算真正掌握。