以下是C++语言实现短作业优先调度算法的代码示例:cpp#include iostream#include algorithm#include vectorusing namespace std; 进程结构体包含进程ID、到达时间和执行时间struct Process int id; 进程ID int arrival; 到达时间 int burst;
按到达时间排序后,进程的顺序为:P1、P2、P3、P4、P5。
首先执行P1,完成时间为6,周转时间为6,等待时间为0。
然后执行P4,完成时间为9,周转时间为6,等待时间为3(P1在执行期间等待了3个时间单位)。
接着执行P5,完成时间为13,周转时间为9,等待时间为5(P1和P4在执行期间分别等待了4和1个时间单位)。
然后执行P3,完成时间为20,周转时间为18,等待时间为11(P1、P4和P5在执行期间分别等待了7、6和5个时间单位)。
最后执行P2,完成时间为28,周转时间为27,等待时间为20(P1、P4、P5和P3在执行期间分别等待了22、19、18和13个时间单位)。
因此,这五个进程的完成时间、周转时间和等待时间分别为:
| 进程 | 完成时间 | 周转时间 | 等待时间 || --- | --- | --- | --- || P1 | 6 | 6 | 0 || P2 | 28 | 27 | 20 || P3 | 20 | 18 | 11 || P4 | 9 | 6 | 3 || P5 | 13 | 9 | 5 |
原文地址: https://www.cveoy.top/t/topic/em77 著作权归作者所有。请勿转载和采集!