欢迎来到天天文库
浏览记录
ID:41702921
大小:99.89 KB
页数:4页
时间:2019-08-30
《实验先来先服务FCFS进程调度模拟》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验先来先服务FCFS进程调度模拟一、实验目的模拟单处理器系统的进程调度,采用先来先月艮务的进程调度算法作为进程设计算法,以加深对进程的概念及进程调度算法的理解.二、实验内容启动VC6,新建一个Win32consoleapplication工程,工程名称:操作系统FCFS实验,如图所示:确定后选新建一个空工程再新建一个C++SourceFile文件:文件名:FCFS算法模拟下面程序就是一个FCFS进程调度的模拟,请仔细研究,体会,消化。运行时请按教材P90表4-2所示,输入5个进程的进程名,到达时间,完成时间,观察结果情况。#include2、dio.h>#inelude〈string.h>#incIude#incIude〈conio.h>#defineN5structPCBcharname[8];intarrive_time;intrun_time;intfinish_time;intzhouzhuan_time;};inttota1=0;structPCBpcb[N],temp;voidoutput(){printf("”);printfC进程名到达时间运行时间完成时间周转时间n);printf(””);for(inti二0;i3、tfC%s%d%d%d%d",pcb[i].name,pcb[i]・arrive_time,pcb[i]・run_time,pcb[i]・finish_time,pcb[i].zhouzhuan^time);n);printf(Hvoidmain()inti,j;for(i二0;i4、_time);}for(i二0;iCN;i++)printfC%spcb[i]・name);printf("%d",pcb[i].arrive_time);printf(”%d"rpcb[i]・run_time);pcb[O].finish_time二pcb[O]・arrive_time+pcb[O].run_time;pcb[0]・zhouzhuan_time二pcb[0].finish_time-pcb[0]・arrive_time;for(i=1;i5、me+pcb[i].run_time;pcb[i].zhouzhuan_time=pcb[i].finish_time-pcb[i].arrive_time;output();}要求:(下面的要求一个一个实现)1•上面程序没有求每个进程的带权周转时间、平均周转时间,平均带权周转时间,能否加上,结果输出的格式按类似P90表4-2输岀。2•上面程序默认认为上一个进程结束前,下一个进程就已经到达,如果要增加一种情况,即上一个进程结束前,下一个进程还没有到达,程序计算周转时间仍然正确,如何修改程序?3上面的程序在输入进程信息时进程到达时间要按从小到大输入6、,否则结果可能不对,请改写程序,使得进程到达时间不按从小到大输入,结果也正确。(提示:先去回忆并掌握数组排序方法(如冒泡法排序力进程结构体数组数据信息输入完成后,将结构体数组按到达时间从小到大排序人
2、dio.h>#inelude〈string.h>#incIude#incIude〈conio.h>#defineN5structPCBcharname[8];intarrive_time;intrun_time;intfinish_time;intzhouzhuan_time;};inttota1=0;structPCBpcb[N],temp;voidoutput(){printf("”);printfC进程名到达时间运行时间完成时间周转时间n);printf(””);for(inti二0;i3、tfC%s%d%d%d%d",pcb[i].name,pcb[i]・arrive_time,pcb[i]・run_time,pcb[i]・finish_time,pcb[i].zhouzhuan^time);n);printf(Hvoidmain()inti,j;for(i二0;i4、_time);}for(i二0;iCN;i++)printfC%spcb[i]・name);printf("%d",pcb[i].arrive_time);printf(”%d"rpcb[i]・run_time);pcb[O].finish_time二pcb[O]・arrive_time+pcb[O].run_time;pcb[0]・zhouzhuan_time二pcb[0].finish_time-pcb[0]・arrive_time;for(i=1;i5、me+pcb[i].run_time;pcb[i].zhouzhuan_time=pcb[i].finish_time-pcb[i].arrive_time;output();}要求:(下面的要求一个一个实现)1•上面程序没有求每个进程的带权周转时间、平均周转时间,平均带权周转时间,能否加上,结果输出的格式按类似P90表4-2输岀。2•上面程序默认认为上一个进程结束前,下一个进程就已经到达,如果要增加一种情况,即上一个进程结束前,下一个进程还没有到达,程序计算周转时间仍然正确,如何修改程序?3上面的程序在输入进程信息时进程到达时间要按从小到大输入6、,否则结果可能不对,请改写程序,使得进程到达时间不按从小到大输入,结果也正确。(提示:先去回忆并掌握数组排序方法(如冒泡法排序力进程结构体数组数据信息输入完成后,将结构体数组按到达时间从小到大排序人
3、tfC%s%d%d%d%d",pcb[i].name,pcb[i]・arrive_time,pcb[i]・run_time,pcb[i]・finish_time,pcb[i].zhouzhuan^time);n);printf(Hvoidmain()inti,j;for(i二0;i4、_time);}for(i二0;iCN;i++)printfC%spcb[i]・name);printf("%d",pcb[i].arrive_time);printf(”%d"rpcb[i]・run_time);pcb[O].finish_time二pcb[O]・arrive_time+pcb[O].run_time;pcb[0]・zhouzhuan_time二pcb[0].finish_time-pcb[0]・arrive_time;for(i=1;i5、me+pcb[i].run_time;pcb[i].zhouzhuan_time=pcb[i].finish_time-pcb[i].arrive_time;output();}要求:(下面的要求一个一个实现)1•上面程序没有求每个进程的带权周转时间、平均周转时间,平均带权周转时间,能否加上,结果输出的格式按类似P90表4-2输岀。2•上面程序默认认为上一个进程结束前,下一个进程就已经到达,如果要增加一种情况,即上一个进程结束前,下一个进程还没有到达,程序计算周转时间仍然正确,如何修改程序?3上面的程序在输入进程信息时进程到达时间要按从小到大输入6、,否则结果可能不对,请改写程序,使得进程到达时间不按从小到大输入,结果也正确。(提示:先去回忆并掌握数组排序方法(如冒泡法排序力进程结构体数组数据信息输入完成后,将结构体数组按到达时间从小到大排序人
4、_time);}for(i二0;iCN;i++)printfC%spcb[i]・name);printf("%d",pcb[i].arrive_time);printf(”%d"rpcb[i]・run_time);pcb[O].finish_time二pcb[O]・arrive_time+pcb[O].run_time;pcb[0]・zhouzhuan_time二pcb[0].finish_time-pcb[0]・arrive_time;for(i=1;i5、me+pcb[i].run_time;pcb[i].zhouzhuan_time=pcb[i].finish_time-pcb[i].arrive_time;output();}要求:(下面的要求一个一个实现)1•上面程序没有求每个进程的带权周转时间、平均周转时间,平均带权周转时间,能否加上,结果输出的格式按类似P90表4-2输岀。2•上面程序默认认为上一个进程结束前,下一个进程就已经到达,如果要增加一种情况,即上一个进程结束前,下一个进程还没有到达,程序计算周转时间仍然正确,如何修改程序?3上面的程序在输入进程信息时进程到达时间要按从小到大输入6、,否则结果可能不对,请改写程序,使得进程到达时间不按从小到大输入,结果也正确。(提示:先去回忆并掌握数组排序方法(如冒泡法排序力进程结构体数组数据信息输入完成后,将结构体数组按到达时间从小到大排序人
5、me+pcb[i].run_time;pcb[i].zhouzhuan_time=pcb[i].finish_time-pcb[i].arrive_time;output();}要求:(下面的要求一个一个实现)1•上面程序没有求每个进程的带权周转时间、平均周转时间,平均带权周转时间,能否加上,结果输出的格式按类似P90表4-2输岀。2•上面程序默认认为上一个进程结束前,下一个进程就已经到达,如果要增加一种情况,即上一个进程结束前,下一个进程还没有到达,程序计算周转时间仍然正确,如何修改程序?3上面的程序在输入进程信息时进程到达时间要按从小到大输入
6、,否则结果可能不对,请改写程序,使得进程到达时间不按从小到大输入,结果也正确。(提示:先去回忆并掌握数组排序方法(如冒泡法排序力进程结构体数组数据信息输入完成后,将结构体数组按到达时间从小到大排序人
此文档下载收益归作者所有