Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 系统编程|调度时间_Algorithm_Scheduling_Round Robin - Fatal编程技术网

Algorithm 系统编程|调度时间

Algorithm 系统编程|调度时间,algorithm,scheduling,round-robin,Algorithm,Scheduling,Round Robin,我试图理解这些调度算法: 先到先得(FCFS) 最短作业优先(SJF) 最短剩余时间(SRT) 循环赛(RR) 因此,考虑到一些输入: Process Name: A; Arrival Time: 0; Expected CPU Running Time: 3 Process Name: B; Arrival Time: 1; Expected CPU Running Time: 5 Process Name: C; Arrival Time: 3; Expected CPU Running

我试图理解这些调度算法:

  • 先到先得(FCFS)
  • 最短作业优先(SJF)
  • 最短剩余时间(SRT)
  • 循环赛(RR)
因此,考虑到一些输入:

Process Name: A; Arrival Time: 0; Expected CPU Running Time: 3
Process Name: B; Arrival Time: 1; Expected CPU Running Time: 5
Process Name: C; Arrival Time: 3; Expected CPU Running Time: 2
Process Name: D; Arrival Time: 9; Expected CPU Running Time: 5
Process Name: E; Arrival Time: 12; Expected CPU Running Time: 5
FCFS计划为
aaabbbbccddddeeeee

剩下的我似乎想不出来。有人能帮我解释一下区别吗


我试着用谷歌搜索,但我对SJF的搜索结果令人困惑。

我给你一些提示

对于SJF和SRT,您不需要真正的定义,只需要从逻辑上考虑名称

对于SJF,选择到达时间最短的未完成作业。使用作业的总时间,即3,5,2,5,5-不要注意该作业已经安排了多少时间

对于SRT,选择剩余时间最少的已到达未完成作业。剩余时间仅定义为总时间减去已安排的时间。因此,在时间2,您已经安排了
AA
,因此
A
的剩余时间将是
3-2=1

对于SJF和SRT,冲突(当两个作业的时间相同时)可能可以通过选择最先到达的作业来解决。对于SRT,冲突也可以通过选择最长的作业来解决。你必须确认这一点

请注意,这些算法有两种变体-抢占非抢占。简言之,先发制人意味着,在每一步中,您都会选择下一步要执行的作业。另一方面,对于非先发制人的,一旦你选择了一个工作,你就可以安排这个工作直到它完成,不管是否有一个时间更短的新工作。有关更详细的说明,请参阅


对于RR,只需选择您在最早之前选择的一个。

那么sjf将是AAACCBBBBBDDDDDEEEE?我仍然不了解您对SRT的解释。@NewFile我对我的解释做了一些修改。@NewFile否。让我们看一下时间1。RT表示A=
3-1=2
,RT表示B=
5-0=5
,2<5,因此您需要选择A,而不是B。@NewFile将
BCC
替换为
CCB
,然后选择是。在时间3,对于B=5的RT,对于C=2的RT。哦,你有一个E太多,一个D太少。