实验一、进程调度算法的设计
实验目的:通过对进程调度算法的设计,深入理解进程调度的原理
实验内容与要求:
- 内容:实现短进程优先调度算法(SPF)和时间片轮转调度算法(RR)。
- 要求:
进程通过定义一个进程控制块的数据结构(PCB)来表示;
每个进程需要赋予进程 ID、进程到达时间、进程需要运行的总时间的属性;
在 RR 中,以 1 为时间片单位;
运行时,输入 5 个进程序列,按照进程的 ID 输出其执行序列。
实验二、死锁避免算法设计
实验目的:通过对银行家算法的设计,深入理解避免死锁的原理。
实验内容与要求:
- 内容:实现银行家避免死锁算法。
- 要求:
可自定义进程数目、资源类型和每种类型资源的数目;
可输入每个进程对每种资源的最大需求、已经获得的数量;
当某进程发起某种资源请求时,计算系统状态是否安全。
实验三、内存页面置换算法的设计
实验目的:通过对内存页面置换算法的设计,深入理解虚拟存储管理的原理
实验内容与要求:
- 内容:实现的最近最久未使用(LRU)置换算法。
- 要求:
假设系统采用固定分配局部置换策略,某进程的总页面数为 8(分别以数字 0-7
来代表);
运行时,输入分配给该进程的页块数(如:3)和一个 20 位长的页面访问序列(如:
12560,36536,56042,70435),输出缺页次数和缺页率。
实验四、磁盘调度算法的设计
实验目的:通过对磁盘调度算法的设计,深入理解提高磁盘访问速度的原理。
实验内容与要求:
- 内容:实现最短寻道时间优先(SSTF)和扫描(SCAN)算法
- 要求:
给出任意的输入流、计算平均寻道长度;
输入流长度、磁头移动方向可定制。