欢迎您访问操作系统实验报告!

操作系统实验报告

更新时间:2021-07-23 03:13:56作者:admin2

#include<algorithm>#include<iomanip>#include<conio.h>using namespace std;struct PCB{ string p_name;//程序名 int super;//优先级 double ndtime;//需要时间 double runtime;//运行时间 string state;//状态 bool operator<(const PCB& nd) { return super>nd.super ; }};int main(){ int n,i,j,nn=0; cout<<\n请输入进程总个数?; cin>>n; PCB *PB=new PCB[n]; for(i=0;i<n;i++) { cout<<\n\n进程号No.<<i<<:<<endl; cout<<\n输入进程名:; cin>>PB[i].p_name ; cout<<\n输入进程优先级数<0~99>:; cin>>PB[i].super ; cout<<\n输入进程运行时间:; cin>>PB[i].ndtime ; nn +=PB[i].ndtime ; PB[i].runtime =0;PB[i].state =W; } sort(PB,PB+n); int k=PB[0].super ; queue<PCB> *que=new queue<PCB>[k+1]; for(i=0;i<n;i++) que[PB[i].super ].push (PB[i]); cout<<setfill(' '); cout<<setiosflags(ios::left); for(i=0;i<nn;i++) { PCB PP=que[k].front() ; int kk; for(kk=0;kk<n;kk++) if(PP.p_name ==PB[kk].p_name) break; PB[kk].state =R; cout<<\n\n按任意键继续......; getch(); cout<<\n\n*-*-*-*-*-*-*-* The excute number:<<i+1<< *-*-*-*-*-*-*-*; cout<<\n\n*-*-*-*-*-*-* 当前正在运行的进程是: <<PP.p_name << *-*-*-*-*-*-*; cout<<\n\np_name state super ndtime runtime; cout<<\n |<<setw(10)<<PP.p_name << |<<setw(6)<<PB[kk].state << |<<setw(6) <<PP.super << |<<setw(11)<<PP.ndtime << |<<PP.runtime ; PP.runtime +=1;PB[kk].runtime +=1; if(PB[kk].super >0) PB[kk].super -=1; que[k].pop (); cout<<\n\n*-*-*-*-*-*-* 当前就绪队列状态为: *-*-*-*-*-*-*; for(j=0;j<n;j++) if(PB[j].state ==W) { cout<<\n\np_name state super ndtime runtime; cout<<\n |<<setw(10)<<PB[j].p_name << |<<setw(6)<<PB[j].state << |<<setw(6) <<PB[j].super << |<<setw(11)<<PB[j].ndtime << |<<PB[j].runtime ; } if(PP.runtime ==PP.ndtime ) { PB[kk].state =F; cout<<\n\n时间片到期,此时进程[<<PB[kk].p_name <<]已完成.; if(que[k].empty ()&&k>0) k--; } else { PB[kk].state =W; if(k>0) que[k-1].push (PB[kk]); else que[k].push (PB[kk]); if(que[k].empty ()&&k>0) k--; } } cout<<\n\n进程已全部完成.<<endl<<endl; return 0;} 整个程序都是模拟“最高优先级”进程调度算法的程序啊我是用C++写的 你用编译器编译下 然后运行下 就知道怎么回事了 轮转法很简单,,,就不写了 不给我分数我觉得很冤枉 因为为了这个程序我写了1个多小时 没有功劳也会苦劳啊

为您推荐

江苏高考如何填报志愿

首先,要参考院校资料,招生章程、招生计划等; 其次,查询有关院校、专业各批录取分数和录取考生的位次情况; 然后,了解今年在本省市招生的学校、专业、人数; 最后,用自己的平时成绩、

2021-06-29 06:36

高考志愿如何填?

高考过后,紧接着高考志愿填报是广大考生及家长头痛的事情,高考志愿填报不仅仅是张志愿表,而是关系着考生未来职业规划和未来人生的走向。在志愿填报时,很多的家长和考生都会搜集

2021-06-29 06:23

黑龙江省高考志愿填报方法

在高考前会有一本招生专业手册,考试结束一阵会有一本各专业录取分数线手册,对照着近三年分数和自己的估分选择志愿。在黑龙江招生信息港进行志愿填报,具体时间高考后在网站上会

2021-06-27 13:47

成都学院怎么样

校园环境美,因为学校是新修没几年的,所以环境好,个人觉得很适合耍朋友。教学质量方面,和其他二本院校确实就没法比了,如果想学东西,那还是选择其他学校吧。不过近几年成都学院收分

2021-06-26 09:12

我要做警察.!怎样可以报考广东警官学院.?

报考条件及要求  各专业报考条件遵照《教育部关于做好2010年普通高等学校招生工作的通知》的要求;报考提前第二批本科(公安类专业)的广东考生须参加我校统一组织的面试、政

2021-06-23 11:45

2021最新高考资料提示

2021最新高考资料提示

2021-04-22 11:51

加载中...