按优先数调度算法实现处理机调度-C++程序代码.doc
-
资源ID:28432137
资源大小:950KB
全文页数:12页
- 资源格式: DOC
下载积分:15金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
按优先数调度算法实现处理机调度-C++程序代码.doc
Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date按优先数调度算法实现处理机调度-C+程序代码按优先数调度算法实现处理机调度-C+程序代码#include<iostream>using namespace std; struct PCB char Name; /进程名 float Time; /要求运行时间 int Level; /优先数 bool state; /状态,1表就绪 PCB *next; /指针 ; void Init(PCB *head) int num; PCB *s,*p; cout<<"请输入进程数" cin>>num; for(int i=0;i <num;i+) p=head; s=new PCB; cout<<"请依次输入进程名 要求运行时间 优先数" cin>>s->Name>>s->Time>>s->Level; if(s->Time>0) s->state =1; while(p->next) if(s->Level >p->next->Level )break; p=p->next ; s->next=p->next; p->next=s; else s->state =0; cout<<"此进程要求运行时间时间不符合要求,不添加入进程列表" int Run(PCB *head) PCB *cur,*p; p=head; cur=p->next; p->next =cur->next; cur->Level-; cur->Time-; cout<<"此次执行的进程信息(执行后):进程名" cout<<cur->Name<<"剩余时间 "<<cur->Time<<"优先数 "<<cur->Level; if(cur->Time<=0) cout<<"状态 为完成态"<<endl; delete cur; else cout<<"状态 为就绪态"<<endl;while(p->next) if(cur->Level >p->next->Level )break; p=p->next ; cur->next=p->next; p->next=cur; cout<<"此次执行后的进程列表序列为:" p=head; while(p->next) cout<<p->next->Name<<" " p=p->next ; cout<<endl;return 0; int main() PCB *Head; Head=new PCB; Head->next =NULL; Init(Head); while(Head->next ) Run(Head); return 0; -