优先权调度算法
按优先权顺序执行,优先数小的,优先级高,非抢占(等该进程执行完,才执行下一个进程)
| P1 | P2 | P3 | P4 | P5 |
|---|
| 到达时间 | 0 | 2 | 3 | 4 | 5 |
| 优先数 | 4 | 3 | 5 | 2 | 1 |
| 服务时间 | 4 | 3 | 5 | 6 | 1 |
题解
| 时间 | 执行的进程 | 注释 |
|---|
| 0 | P1 | 0时刻P1到达,执行P1 |
| 4 | P4 | P1完成。 此时剩下的进程中已经到达的有P2,P3,P4,因P4优先级最高,执行P4进程。 |
| 10 | P5 | P4完成。此时P5已经到达,因P5优先级最高,执行P5进程。 |
| 11 | P2 | P5完成。 此时剩下的进程中P2优先级最高,执行P2进程。 |
| 14 | P3 | P2完成。 此时剩下的进程中只有 P3,执行P3进程。 |
| 19 | 无进程 | P3完成。 此时 P3的5个服务时间结束,程序结束。 |
答案
| P1 | P2 | P3 | P4 | P5 |
|---|
| 完成时间 | 4 | 14 | 19 | 10 | 11 |
| 周转时间 | (4-0=)4 | (14-2=)12 | (19-3=)16 | (10-4=)6 | (11-5=)6 |
| 带权周转时间 | (4/4=) 1 | (12/3=) 4 | (16/5=)3.2 | (6/6=) 1 | (6/1=)6 |
| 平均周转时间 | 8.8 | | |
| 平均带权周转时间 | 3.04 | | |
完成时间: 在整个程序运行过程中,此进程服务完成的时间
周转时间 : 完成时间 - 到达时间
带权周转时间 :周转时间 / 服务时间
平均周转时间: 总周转时间 / 进程总数
平均带权周转时间: 总带权周转时间 / 进程总数