📅  最后修改于: 2023-12-03 14:41:09.979000             🧑  作者: Mango
FCFS是一种简单的CPU调度算法,它按照任务到达的顺序分配CPU时间。当一个进程开始执行时,它占用CPU直到完成或者被阻塞。
| 进程 | 到达时间 | 运行时间 | 完成时间 | 周转时间 | 等待时间 | | ------ | -------- | -------- | -------- | --------- | -------- | | P1 | 0 | 4 | 4 | 4 | 0 | | P2 | 1 | 3 | 7 | 6 | 3 | | P3 | 2 | 2 | 9 | 7 | 5 | | P4 | 3 | 1 | 10 | 7 | 6 |
在上述示例中,四个进程按照到达时间的顺序被执行。没有考虑进程的优先级,因此完成时间、周转时间和等待时间都是固定的。
Priority CPU调度算法根据进程的优先级确定CPU资源的分配顺序。进程的优先级可以根据不同的策略进行设置,如根据进程的重要性、响应时间等指标。
| 进程 | 到达时间 | 运行时间 | 优先级 | 完成时间 | 周转时间 | 等待时间 | | ------ | -------- | -------- | ------ | -------- | --------- | -------- | | P1 | 0 | 4 | 2 | 10 | 10 | 6 | | P2 | 1 | 3 | 5 | 4 | 3 | 0 | | P3 | 2 | 2 | 1 | 6 | 4 | 2 | | P4 | 3 | 1 | 3 | 3 | 0 | 0 |
在上述示例中,四个进程根据优先级顺序被执行。进程的优先级反映了其在调度中的重要性,高优先级的进程会被尽早执行。完成时间、周转时间和等待时间根据优先级和运行时间而变化。
以上是FCFS和Priority CPU调度的区别,FCFS按照任务到达的顺序执行,没有优先级的考量;而Priority CPU调度根据进程的优先级进行调度,高优先级的进程优先获得CPU资源。