设计1 进程调度算法的模拟.docx

设计1 进程调度算法的模拟.docx

ID:55281242

大小:530.13 KB

页数:78页

时间:2020-05-09

设计1    进程调度算法的模拟.docx_第1页
设计1    进程调度算法的模拟.docx_第2页
设计1    进程调度算法的模拟.docx_第3页
设计1    进程调度算法的模拟.docx_第4页
设计1    进程调度算法的模拟.docx_第5页
资源描述:

《设计1 进程调度算法的模拟.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、山东科技大学学生课程设计设计1进程调度算法的模拟一、设计目的1、通过编程实现进程调度算法的模拟,了解进程调度的过程,理解进程调度各方法的特点。二、设计要求1.用语言来实现对n个进程采用不同调度算法的进程调度。2.每个用来标识进程的进程控制块PCB用结构来描述,包括以下字段:(1)进程优先数ID,其中0为闲逛进程,用户进程的标识数为1,2,3…。(2)进程优先级Priority,闲逛进程(idle)的优先级为0,用户进程的优先级大于0,且随机产生,优先数越大,优先级越高。(3)进程占用的CPU时间CPUtime,进程每运行一次,累计值等于4。(4)进程总共需要运行时间Alltime,

2、利用随机函数产生。(5)进程状态,0:就绪态;1:运行态;2:阻塞态。(6)队列指针next,用来将多个进程控制块PCB链接为队列。3.优先数改变的原则(1)进程在就绪队列中每呆一个时间片,优先数增加1。(2)进程每运行一个时间片,优先数减3。78山东科技大学学生课程设计4.在调度前,系统中拥有的进程数PCB_number由键盘输入,经初始化后,所有的进程控制块PCB链接成就绪队列。三、设计说明开始初始化PCB,输入进程信息FCFS算法,按照进程先后顺序输出SJS算法,按照ALLTIME从小到大依次输出优先级算法,按照优先从大到小输出,进程执行依次P-3,就绪队列中的进程P+1RR

3、算法,按照时间片依次执行进程,ALLTIME—=4.结束1FCFS模块78山东科技大学学生课程设计1.1功能对于先到达的进程优先分配CPU,按照先来先服务的原则依次执行各进程。1.2数据结构typedefstructPCB{intID;//进程优先数,用于标示不同的进程intPriority;//进程优先级intCPUTime;//进程占用的CPU时间CPUtime,进程每运行一次,累计值等于4intALLTime;//进程总共需要运行时间AlltimeintStatus;//用于表示进程状态,0:就绪态;1:运行态;2:阻塞态}PCB;1.3算法voidFCFS(){78山东科技

4、大学学生课程设计Node*p=head->next;while(p!=NULL){cout<<"执行进程"<data.ID;p=p->next;}cout<

5、PU时间CPUtime,进程每运行一次,累计值等于4intALLTime;//进程总共需要运行时间AlltimeintStatus;//用于表示进程状态,0:就绪态;1:运行态;2:阻塞态}PCB;2.3算法voidSJF(){Node*p;Node*pmin;while(head2->next!=NULL){pmin=head2->next;for(p=head2->next;p!=NULL;p=p->next){if(pmin->data.ALLTime>p->data.ALLTime)pmin=p;}78山东科技大学学生课程设计cout<<"执行剩余区间长度最短的进程"<

6、ndl<data.ID;for(p=head2;p!=NULL;p=p->next){if(p->next==pmin){p->next=p->next->next;free(pmin);}}}printf("");printf("所有进程都执行完成。");}3SearchMaxPRI模块3.1功能按照优先级从高到低依次执行程序3.2数据结构q0指向q的前一个进程,便于删除进程;p返回优先级最大进程;q用于遍历链表78山东科技大学学生课程设计3.3算法voidSearchMaxPRI(intm){Node*p=head->next;Node*q=head-

7、>next;Node*q0=head;while(q!=NULL){if(q->data.ALLTime==0){cout<<"进程已执行完成"<data.ID;n--;q0->next=q0->next->next;free(q);q=q0->next;}else{78山东科技大学学生课程设计if(q->data.Priority>p->data.Priority)p=q;q0=q0->next;q=q->next;}}if(n>0)action

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。