一。 实验目的要求
用高级语言编写和调试一个或多个作业调度的模拟程序,以加深对作业调度算法的理解。
二。 实验要求
1、编写并调试一个单道处理系统的作业等待模拟程序。
作业等待算法:分别采用先来先服务(fcfs),最短作业优先(sjf)、响应比高者优先(hrn)的调度算法。
对每种调度算法都要求打印每个作业开始运行时刻、完成时刻、周转时间、带权周转时间,以及这组作业的平均周转时间及带权平均周转时间,以比较各种算法的优缺点。
2、编写并调度一个多道程序系统的作业调度模拟程序。
作业调度算法:采用基于先来先服务的调度算法。可以参考课本中的方法进行设计。
对于多道程序系统,要假定系统中具有的各种资源及数量、调度作业时必须考虑到每个作业的资源要求。
三、实验过程。
1.单道处理系统的作业等待模拟程序(分别采用先来先服务(fcfs),最短作业优先(sjf)、响应比高者优先(hrn)的调度算法。 )
1)**实现。
void hrn(int m) /高响应比算法。
jcb *min;
int i,iden;
system("cls");
inital();
for(i=0;i while(p!=null);
if(iden)
i--;times++;
/printf("time=%d:\tno jcb submib...wait...time);
if(times>1000)
printf("runtime is too long...error...getch();
elserunning(min,m调用running()函数。
forfinal调用running()函数。
void sjf(intm) /最短作业优先算法。
jcb *min;
int i,iden;
system("cls");
inital();
for(i=0;iwhile(p!=null) ;
if(iden)
else} /for
final调用running()函数。
1).3先来先服务算法。
void fcfs(int m先来先服务算法。
int i,iden;
system("cls");
inital();
for(i=0;i
elsefinal调用running()函数。
2).实验结果及分析。
主程序菜单。
先来先服务算法》
第一轮作业调度,如图显示了每个作业提交时间、需求时间、响应比、即时状态、主存需求、磁带机数量等,每次调度完毕输出作业完成时间、周转时间、带权周转时间、释放的资源:
同样,第二轮调度,作业22222完成,如下显示:
同样,第三轮调度,作业33333完成,如下显示:
全部作业运行完毕,计算总的平均周转时间和带权周转时间:
短作业优先算法》
单道作业批处理系统初始化,输入三个作业,按照提示输入其时间,资源需求等:
第一轮作业调度,如图显示了每个作业提交时间、需求时间、响应比、即时状态、主存需求、磁带机数量等,每次调度完毕输出作业完成时间、周转时间、带权周转时间、释放的资源:
同样,第二轮调度,作业33333完成,输出作业完成时间、周转时间、带权周转时间、释放的资源:
同样,第三轮调度,作业22222完成,输出作业完成时间、周转时间、带权周转时间、释放的资源:
全部作业运行完毕,计算总的平均周转时间和带权周转时间:
响应比高者优先算法》
单道作业批处理系统初始化,输入三个作业,按照提示输入其时间,资源需求等:
第一轮作业调度,如图显示了每个作业提交时间、需求时间、响应比、即时状态、主存需求、磁带机数量等,11111调度完毕输出作业完成时间、周转时间、带权周转时间、释放的资源:
第二轮作业调度完毕,22222已经完成,输出作业完成时间、周转时间、带权周转时间、释放的资源:
全部作业运行完毕,计算总的平均周转时间和带权周转时间:
2. 多道程序系统的作业调度模拟程序(采用基于先来先服务的调度算法)
1)**实现。
main() 主函数。
int len;
char ch;
input();
t=pb->arrivetime;
check();
len=space();
while((len!=0)&&ready!=null))
printf("该作业组的平均周转时间:%4.2f",tisum /len);
printf("该作业组的带权平均周转时间:%4.2f",wisum/len);
ch=getchar();
2)实验结果。
实验二作业调度实验
西北农林科技大学信息工程学院实习报告。课程操作系统学院信息工程专业年级软件151 学号 2015012893 姓名张鑫 周次第八周交报告时间 2017.5.5成绩 一。目的要求 用高级语言编写和调试一个或多个作业调度的模拟程序,以加深对作业调度算法的理解。二 实验内容 1 编写并调试一个单道处理系统...
实验2作业调度
实验二作业调度模拟程序。1.实验目的。1 加深对作业调度算法的理解 2 进行程序设计的训练。2 实验要求。用高级语言编写一个或多个作业调度的模拟程序。单道批处理系统的作业调度程序。作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所运行的时...
操作系统作业调度实验
实验一进程。2011210549 崔晶。1.本实验实现的功能有 创建一个进程,撤销一个进程,挂起一个进程。2.本实验初始化的进程块状态如图所示 自定义 p表示正在运行,r表示就绪,w表示等待。3.程序如下 include include 进程块的数据结构。struct pcb struct 插入等待...