注册 登录
编程论坛 数据结构与算法

作业调度

liang159896 发布于 2011-06-13 18:21, 1357 次点击
作业调度问题
描述:
    假设计算机只有一个CPU,在任何时候只能运行一个作业,并且作业的执行是非抢占式的(作业一旦被调度后占有CPU就一直执行完成)。
    作为例子,现假设有四个作业,如下表所示。
   
作业次序    运行所需时间
Job1    15
Job2    8
Job3    3
Job4    10
   
    对于先来先服务的调度策略,各个作业的开始时间、完成时间如图1所示,则四个作业的平均完成时间为:(15+23+26+36)/4=25
    对于最短服务时间优先的调度策略,各个作业的开始时间、完成时间如图2所示,则四个作业的平均完成时间为:(3+11+21+36)/4=17.75
    现设有n个作业,每个作业所需的运行时间为Ti,(i∈[1,n],n∈[1,50000]) ,作业序号和相应的所需运行时间保存在数据文件中。
实现要求:
    ⑴  将作业序号和运行所需时间构成数据记录,实现数据记录插入到数据文件的最后,数据记录的输入以0,0作为结束;
    ⑵  按最短服务时间优先的调度策略,输出各个作业的开始时间、完成时间;
    ⑶  计算所有作业的平均完成时间。
6 回复
#2
寒风中的细雨2011-06-13 20:48
怎么 都是同时到达的吗?
#3
liang1598962011-06-14 10:04
只有本站会员才能查看附件,请 登录

完整的题目在这里…………,请各位大侠帮忙!!!
#4
brian19942011-06-14 13:51
求数据
#5
Alar302011-06-15 10:19

作业题?
#6
finalken2011-06-15 11:50
除了计算一下加减乘除,貌似只用到了一个排序算法吧。。。。这题目。说得这么复杂
#7
ebony2011-06-22 04:15
It is not hard
1