内容:设计一个简单的进程调度算法,模拟OS中的进程调度过程 2.要求: ① 进程数不少于5个; ② 进程调度算法任选; 最好选用动态优先数法,每运行一个时间片优先数减3 ③ 用C++(或C)语言编程; ④ 程序运行时显示进程调度过程。 3.步骤: ① 设计PCB及其数据结构: 进程标识数:ID 进程优先数:PRIORITY(优先数越大,优先级越高) 进程已占用时间片:CPUTIME 进程尚需时间片:ALLTIME(一旦运行完毕,ALLTIME为0) 进程队列指针:NEXT,用来将PCB排成队列
进程调度算法模拟。通过对进程调度算法的模拟,进一步理解进程的基本概念,加深对进程运行状态和进程调度过程、调度算法的理解。 (1) 用C、C++、Java语言编程实现对5个进程采用动态优先权调度算法进行调度的过程。数据如下: 5个进程的到达时刻和服务时间见下表,忽略I/O以及其它开销时间,使用动态优先权算法进行调度,优先权初始值为100,请输出各个进程的完成时刻、周转时间、带权周转时间。 进程 到达时刻 服务时间 A 0 3 B 2 6 C 4 4 D 6 5 E 8 2 (2)每个用来标识进程