短作业(进程)优先调度算法 1
短作业(进程)优先调度算法SJ(P)F,是指对短作业或短进程优先调度的算法
它们可以分别用于作业调度和进程调度
短作业优先(SJF)的调度算法是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存运行
而短进程(SPF)调度算法则是从就绪队列中选出一个估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机再重新调度
SJ(P)F 调度算法能有效地降低作业(进程)的平均等待时间,提高系统吞吐量
该算法对长作业不利,完全未考虑作业的紧迫程度
流程图 开始 获取进程信息 调用 action,执行进程 按作业运行 结束 输出结果 3
代码 #include #include #include struct sjf{ char name[10]; float arrivetime; float servicetime; float starttime; float finishtime; float zztime; float dqzztime; }; sjf a[100]; void input(sjf *p,int N) { int i; printf("intput the process's name & arrivetime & servicetime:\nfor exmple: a 0 100\n"); for(i=0;i