资源介绍
C语言写的按时间片轮转法实现处理器调度的程序。
(1) 假定系统有5个进程,每个进程用一个PCB来代表。PCB的结构为:
进程名——如Q1~Q5。
指针——把5个进程连成队列,用指针指出下一个进程PCB的首地址。
要求运行时间——假设进程需要运行的时间单位数。
已运行时间——进程已运行的时间单位数,初始值为0。
状态——假设两种状态,就绪和结束,用R表示就绪,用E表示结束。初始状态都为就绪状态。
(2) 运行之前,为每个进程确定它的“要求运行时间”。通过键盘输入这些参数。
(3) 把5个进程按顺序排成循环队列,用指针指出队列连接情况。用一个标志单元记录轮到运行的进程。处理器调度总是选择标志单元指示的进程运行,对所指的进程,将其“已运行时间”加1。
(4) 进程运行一次后,若“要求运行时间”等于“已运行时间”,则将状态改为“结束”,退出队列,否则将继续轮转。
(5) 若就绪队列为空,结束,否则转到(3)重复。
- 上一篇: 基于STC89C52和DS1302的电子时钟(带闹钟)
- 下一篇: 操作系统实验——进程管理系统