实验三进程调度蔡凤武.doc

实验三进程调度蔡凤武.doc

ID:58427454

大小:116.00 KB

页数:18页

时间:2020-09-03

实验三进程调度蔡凤武.doc_第1页
实验三进程调度蔡凤武.doc_第2页
实验三进程调度蔡凤武.doc_第3页
实验三进程调度蔡凤武.doc_第4页
实验三进程调度蔡凤武.doc_第5页
资源描述:

《实验三进程调度蔡凤武.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验三进程调度实验目的1、理解有关进程控制块、进程队列的概念。2、掌握进程优先权调度算法和时间片轮转调度算法的处理逻辑。实验内容与基本要求1、设计进程控制块PCB的结构,分别适用于优先权调度算法和时间片轮转调度算法。2、建立进程就绪队列。3、编制两种进程调度算法:优先权调度算法和时间片轮转调度算法。实验报告内容一.优先权调度算法和时间片轮转调度算法原理。对于优先权调度算法,其关键是在于是采用静态优先权还是动态优先权,以及如何确定进程的优先权。静态优先权是在创建进程是确定的,并且规定它在进程的整个运行期间保持不变。动态优先权要配合抢占调度方式使用,它是指在创建进程时所赋予的

2、优先权,可以随着进程的推进而发生改变,以便获得更好的调度性能。在就绪队列中等待调度的进程,可以随着等待时间的增加,其优先权也以某个速率增加。因此,对于优先权初值很低的进程,在等待足够时间后,其优先权也可能升为最高,从而获得调度,占用处理器并执行。对已时间片轮转调度算法,系统将所有的就绪进程按进路就绪队列的先后次序排列。每次调度时把CPU分配给队首进程,让其执行一个时间片,当时间片用完,由计时器发出时钟中断,调度程序则暂停改程序的执行,使其退出处理器,并将它送人就绪队的末尾,等待下一轮调度执行。然后,把cpu分配给就绪队列中新的队首进程,同时让它执行一个时间片。二.程序流程

3、图。结束就绪队列为空吗二.程序及注释。#include#include#include#include#include#include#defineP_NUM5#defineP_TIME50enumst{ready,execute,block,finish};//状态定义进程//structpcb{charname[4];//进程名字//intpriority;//进程优先权//intcputime;//CPU运行时间//intneedtime;//进程运行

4、需要的时间//intcount;//进程执行次数//intround;//时间片轮转轮次//stprocess;//进程状态//pcb*next;};//定义进程//pcb*get_process(){pcb*q;pcb*t;pcb*p;inti=0;cout<<"inputnameandtime"<>q->name;cin>>q->needtime;q->cputime=0;q->priority=P_TIME-q->needtime;q->proces

5、s=ready;q->next=NULL;if(i==0){p=q;t=q;}else{t->next=q;t=q;}i++;}returnp;//输入模拟测试的进程名和执行所需的时间,初始设置可模拟5个进程的调度//}voiddisplay(pcb*p){cout<<"name"<<""<<"cputime"<<""<<"needtime"<<""<<"priority"<<""<<"st"<name;cout<<"";cout<cputime;cout<<"";cout<needtime;cout<<""

6、;cout<priority;cout<<"";switch(p->process){caseready:cout<<"ready"<next;}}//显示模拟结果,包含进程名,cpu的时间。运行所需时间以及优先级//intprocess_finish(pcb*q){intbl=1;while(bl&&q

7、){bl=bl&&q->needtime==0;q=q->next;}returnbl;//结束进程,即将队列中各进程的所需时间设置为零//}voidcpuexe(pcb*q){pcb*t=q;inttp=0;while(q){if(q->process!=finish){q->process=ready;if(q->needtime==0)q->process=finish;}if(tppriority&&q->process!=finish){tp=q->priority;t=q;}q=q->next;}if(t-

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

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

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