欢迎来到天天文库
浏览记录
ID:22471098
大小:247.12 KB
页数:7页
时间:2018-10-29
《实验一进程及其管理进程调度算法模拟,用动态优先数及时间片轮转法实现进程调度》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、#include//界面voidmenu(intan-[][5J)inti,j;printf(n********进矛呈关信息如下:***********n):for(i=0;i<5;i++)switch(i)case0:printf('’IDcase1:printff'PRIcase2:n,arr[i][j]);printf(nn);break;case3:aiT[i]
2、j]);printf(nn);break;case4:printff’STATE:");for(j=0;j<5;j++)printf("%d",arr[i][j]);print
3、f("");break;:");for(j=0;j<5;j++)printf("%du,arr[i]
4、jJ);printf(",');break;printf("CPUTIMEL:");for(j=0;j<5;j++)printf("%dprintf(,,NEADTIME:H);for(j=0;j<5;j++)printf("%d:");for(j=0;j<5;j++)printf("%d",arr[i][j]);printf("");break;}printf(''*************进程调度过程如下}//选出最大的优先级由大到小排列voidsort(
5、inta[J,intb
6、J,intc[]){inttemp,t,s,i,j;for(i=0;i<4;i++){for(j=0;j<4-i;j++){if(a[j]7、j]=a8、j+l];alj+lJ=temp;t=bU];bU]=b[j+l];b9、j+l]=t;s=c[j];c[j]=c[j+l];c[j+l]=s;}}voidmain(void)inti;intPRlORITY[5]={0};intCPUTIME[5]={0};intALLTIME[5]={0);intID[5]={0};//ID,PRI,CPUTIME,NEADTIM10、E,STATEintarr[][5]={{0,l,2,3,4},{9,38,30,29,0},{0,0,0,0,0},{3,3,6,3,4},{0,0,0,0,0}};menu(arr);//二维数组的数据存到-•维中for(i=0;i<5;i++){ID[i]=arr[0][i];PRIORITY[i]=arr[l][i];CPUTIME[i]=arr[2][i];ALLTIMEliJ=arr[3JliJ;}while⑴{if(ALLTIMEl0]<=0)ID[O]=-1;sort(PRIORITY,ID,ALLTIME);//对优先级巾大到小排序if(IDLOJ!=-l)11、{printff1当前正运行的进程:%dn,ID[O]);printff当前的等待序列为;for(i=l;i<5;i++){if(ID[i]!=-l)printf(M%dn,ID[i]);")printf(’’}PRIORITY[0]-=3;CPUTIME[O]+=1;ALLTIME[O]-=1;"C:UsersAdministratorDesktop123...口II下口4040-PC.0自/QJ39030亡日2—4—20060、?3目—%—18030呈3#,109030PRIPUTPUTIMELNEADTIMESTATE【■)C)C)C)C)C)12、C)C)C)C)CX*进程调度过程如下飄藝麟u飄藝麟uXX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟uXX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟XX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟XX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟XX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟XX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(FH3..12pseDrtoatrssHinmdArsesuAcN"C:UsersAdministratorD13、esktop123...14、□11回15、I当前的等待序列为:020::程为进列的序正的1;刖当当04::程为进列的序正的1;刖当当04::程为进列的序正的1;刖当当04::程为进列的序一丁寿正的1;刖当当程为进列的序一丁寿正的1;刖当当程为进列的序一丁寿正的1;刖当当程为进列的序一丁寿正的1;刖当当程为进列的序一丁寿正的1;刖当当
7、j]=a
8、j+l];alj+lJ=temp;t=bU];bU]=b[j+l];b
9、j+l]=t;s=c[j];c[j]=c[j+l];c[j+l]=s;}}voidmain(void)inti;intPRlORITY[5]={0};intCPUTIME[5]={0};intALLTIME[5]={0);intID[5]={0};//ID,PRI,CPUTIME,NEADTIM
10、E,STATEintarr[][5]={{0,l,2,3,4},{9,38,30,29,0},{0,0,0,0,0},{3,3,6,3,4},{0,0,0,0,0}};menu(arr);//二维数组的数据存到-•维中for(i=0;i<5;i++){ID[i]=arr[0][i];PRIORITY[i]=arr[l][i];CPUTIME[i]=arr[2][i];ALLTIMEliJ=arr[3JliJ;}while⑴{if(ALLTIMEl0]<=0)ID[O]=-1;sort(PRIORITY,ID,ALLTIME);//对优先级巾大到小排序if(IDLOJ!=-l)
11、{printff1当前正运行的进程:%dn,ID[O]);printff当前的等待序列为;for(i=l;i<5;i++){if(ID[i]!=-l)printf(M%dn,ID[i]);")printf(’’}PRIORITY[0]-=3;CPUTIME[O]+=1;ALLTIME[O]-=1;"C:UsersAdministratorDesktop123...口II下口4040-PC.0自/QJ39030亡日2—4—20060、?3目—%—18030呈3#,109030PRIPUTPUTIMELNEADTIMESTATE【■)C)C)C)C)C)
12、C)C)C)C)CX*进程调度过程如下飄藝麟u飄藝麟uXX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟uXX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟XX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟XX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟XX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(飄藝麟XX)OOOOOOOOOOOOOOOOOOOOOOOOOOO(FH3..12pseDrtoatrssHinmdArsesuAcN"C:UsersAdministratorD
13、esktop123...
14、□11回
15、I当前的等待序列为:020::程为进列的序正的1;刖当当04::程为进列的序正的1;刖当当04::程为进列的序正的1;刖当当04::程为进列的序一丁寿正的1;刖当当程为进列的序一丁寿正的1;刖当当程为进列的序一丁寿正的1;刖当当程为进列的序一丁寿正的1;刖当当程为进列的序一丁寿正的1;刖当当
此文档下载收益归作者所有