南方科技大学计算机操作系统实验课程
实验九
处理机调度
1、 实验目的
加深对操作系统调度机制的理解;
2、 实验准备
拷贝 lab9 中文件(课堂上提供)到~/raspberry/prj_os/lab9,
执行命令
make
编译;
3、 实验内容
在采用多道系统的程序设计中,往往有若干进程同时处于就绪状态。当就绪状态进程数大于处理机数
时,就必须按照某种策略来决定哪些进程优先占用处理机。本实验模拟在单处理机情况下处理机调度。
3.1 按时间片轮转法实现处理机调度
3.1.1 设计思路
1) 每个进程用一个进程控制块 PCB 来代表,进程控制块包括进程名(进程的标识)、已运行时间、要求
运行时间、状态(运行、就绪、结束) 、PCB 指针(把进程连成队列,用指针指出队列中下一个进程
控制块首地址);
2) 队列分就绪队列和完成队列;
3) 每模拟运行一次进程,已运行时间加一,要求运行时间减一;
4) 进程运行一次后,若进程要求运行时间未全部用完(不为 0),表示进程未执行完,将该进程插入
到就绪队列队尾;若进程要求运行时间全部用完(为 0),则表示进程完成,进程状态改为结束,
退出就绪队列,插入到完成队列队首;
5) 若就绪队列不为空,重复步骤 3)和 4);
6) 程序有显示和打印语句,每次运行后显示变化。
评论0