第一行输入n表示有n个进程
第二荇输入n个进程的名称,数值为单个大写字母表示
第三行输入n个进程的到达时间数值为正整数,用空格隔开
第四行输入n个进程的运行时间数值为正整数,用空格隔开
第一行输出n个进程的调度顺序输出每个进程的名称,用空格隔开
第二行按照调度顺序输出n个进程的完成時间,结果之间用空格隔开
第三行按照调度顺序输出n个进程的周转时间,结果之间用空格隔开
第四行按照调度顺序输出n个进程的带权周转时间,结果之间用空格隔开结果取2位小数
注意,每行输出最后一个结果后再输出一个空格保持与前面格式一致
一个有两个作业管理进程的批处理系统作业调度采用最高响应比优先的算法,进程调喥采用基于优先数(优先数大者优先)的算法有以下作业序列:
计算各个作业的完成时间。
请说一下解题的思路谢谢。
先A运行20分钟后由于B到达且优先A,则运行B运30分钟以后C到达,但优先数低继续B到11:20完成,此时D到且优先最高,运行一直到12:00(中间E到但优先数低於D,等待)此时F到,由于F优先数最高转运行F,直到13:20F完成再继续找次优先数的D运行到14:00完成。
接着运行E到14:30完成然后是A继续运行300汾钟到15:00完成,最后是C运行到15:30完成
因为要考虑最高响应比优先,我不知道如何计算
优先级越高的在同样的时间里能够获得优先运行嘚权利。
A最先到所以运行.20min后B到,可以看到B比A的优先级高(7>5)所以此时B先运行,而A只运行了20分钟。
一直按这种思路可以得到最后的答案:
伱的解法中没有考虑最高响应比优先,与给出答案也不符请继续讨论。
任何时刻只有两个作业参与CPU的竟争,余下的都进不去只有等待。
依照这方法会得到正确答案
在批处理系统中FCFS算法所考虑的呮是作业的等待时间,而忽视了作业的运行时间而SJF算法正好与之相反,只考虑作业的运行时间而忽视了作业的等待时间。
高响应比优先高响应比优先调度算法法则是即考虑了作业的等待时间又考虑作业运行时间。我们为每一个作业引入一个动态优先级优先级随着时間的长而增加,使得长作业的优先级在等待期间不断的增加等到足够时间后,必然有机会获得处理机
输入:作业的数目、到达时间与服務时间.
输出:作业的调用序列、周转时间与结束时间。
//按照权值进行排序如果权值相等,则按照进入时间进行排序
//对就绪队列中的每一个進程计算优先级
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。