急急急急 非常急
楼主
楼主 (用c来实现) 求助:Thanks!! 在一个多道程序设计系统中,实现“作业调度”的模拟。模拟程序的要求如下: 1.输入: 作业流文件,其中存储的是一系列待执行的作业信息,每个作业包括五个数据项:作业号,优先级,进入输入井时间(用一个整数表示,如10:10表示为1010),作业估计运行时间(单位:分钟),内存需求量。各数据项用空格隔开。 2.输出: 按照作业调度次序输出每一个作业流文件:“作业号”、“进入内存时间”、“作业完成时间”、“周转时间”;每行输出一个作业的信息。 计算出平均周转时间并输出。 3.作业调度算法: 短作业优先(作业估计运行时间最短的作业首先被调度)。 4.处理要求: 在两道环境下有多个作业; 程序运行时,首先提示输入测试文件的文件名; 输入文件名后,程序将读入文件中的有关数据,并按照最短作业优先调度算法对作业进行调度,作业被调度运行后不再退出(忽略进程调度或者可以认为进程调度采用的是先来先服务调度算法); 假设内存容量为100K,存储管理方案为可变分区方式,且不允许在内存中移动作业。 数据结构定义: struct jcb{ char name[10]; /* 作业名 */ char state; /* 作业状态 */ float ts; /* 提交时间 */ float super; /* 优先权 */ floattb; /* 开始运行时间 */ float tc; /* 完成时间 */ float ti; /* 周转时间 */ float wi; /* 带权周转时间 */ floatntime; /* 作业所需运行时间 */ struct jcb *link; }; /* 结构体指针 */ } |