操作系统实验讲义主要涵盖操作系统的核心组成部分,包括进程管理、存储管理、设备管理和文件管理。实验目的是让学生通过模拟操作系统的实现,深入理解操作系统的工作原理和实现方法,同时提升程序设计能力。
1. 进程管理:
- 进程控制:学生需要设计一个小型系统,模拟进程的创建、终止、阻塞和唤醒等操作。进程控制块(PCB)包含进程标识符、寄存器内容、状态、等待原因、页表位置等信息。实验限制最多处理10个进程。
- 进程调度:实验中可实现先来先服务(FCFS)、短进程优先(SPF)和时间片轮转(RR)三种调度算法。进程的到达时间和运行时间通过系统时钟和随机数生成。
- 进程同步:使用信号量机制,实现P、V原语,模拟同步和互斥。全局变量模拟关键寄存器,用以检测中断。
2. 存储管理:
- 内存分配与回收:采用请求分页式存储管理,通过位示图表示内存使用情况,建立页表完成地址转换。实验中还需要实现页面置换算法,以支持虚拟存储器。
3. 设备管理:
- 设备分配:模拟三种类型的设备,采用安全分配策略,使用系统设备表、通道控制表、控制器控制表和设备控制表。设计设备无关软件,实现设备独立性,提供统一的用户接口。
4. 文件管理:
- 文件逻辑和物理结构:支持定长记录的有结构文件和无结构文件。目录结构采用树形结构,磁盘分配采用链接结构,空闲空间管理通过位示图。
实验教学结合了《计算机操作系统》教材,通过同步教学和上机实践,让学生在实践中理解和掌握课堂所学原理。实验一专注于进程控制,通过定义PCB和模拟进程状态转换,让学生亲身体验操作系统如何处理进程的生命周期和状态变化。实验过程中可以使用随机数或键盘输入模拟事件,如创建、结束、阻塞和激活进程等。