进程调度模拟实验

上传人:M****1 文档编号:486859605 上传时间:2022-08-09 格式:DOCX 页数:7 大小:41.75KB
返回 下载 相关 举报
进程调度模拟实验_第1页
第1页 / 共7页
进程调度模拟实验_第2页
第2页 / 共7页
进程调度模拟实验_第3页
第3页 / 共7页
进程调度模拟实验_第4页
第4页 / 共7页
进程调度模拟实验_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《进程调度模拟实验》由会员分享,可在线阅读,更多相关《进程调度模拟实验(7页珍藏版)》请在金锄头文库上搜索。

1、进程调度模拟实验姓名学号实验日期成绩院别班级实验场地实验课程名称计算机操作系统实验项目名称进程调度模拟实验对于每一个实验项目,实验报告(含预习)一般应包含以下内容:第一部分一一预习后的书面汇报。其主要内容应包含:*1、实验目的; *2、实验内容。第二部分一一实验结果的书面汇报。其主要内容应包含:*3、实验源代码;*4、实验结果及分析(含实验测试输入数据, 试验运行结果截图,用简洁的语言总结实验,汇报是否达到实验目的);*5、实验体会、问题讨论(谈体会或感想、提出建议或意见、讨论 与实验有关的且自己感兴趣的问题、回答课后思考题)。一、实验目的设计一个有N个进程并行的进程调度程序二、实验内容要求学

2、生熟练掌握最高优先级优先的进程调度算法,并使用c语言编写程序模拟若干个进程的 进程调度过程。三、实验源程序(或实验步骤)#in cludevstdio.h#in cludevstdlib.h#in cludevstri ng.h#defi ne MAX 100 typedef structchar name4; 进程名int priority;/优先级int starttime;/到达系统时间int n eedtime;/ 运行时间int cputime;/已用 CPU 时间char state;/进程状态pr;pr aMAX;int n;进程数int t;时间片大小void in put()

3、int i;printf(请输入进程的名字 优先级 到达系统时间 运行时间:(中间用空格隔开)n);for(i=0;i vn ;i+)printf(第4 个进程,i+1);sea nf(%s %d %d %d, &ai. name, &ai.priority,&ai.starttime, &ai. needtime); ai.cputime=O;ai.state=W;void Sort()int i,j;pr temp;for(i=0;iaj + 1.starttime)temp=aj;aj=aj+1;aj+1=temp;for(i=0;iv n-1;i+) /再按优先级排序,数字高则优先级高

4、for(j = 0;j vn- 1-i;j +)if(aj.priorityvaj + 1.priority)temp=aj;aj=aj+1;aj+1=temp;if (aO.state! = F)aO.state=R;将优先级最高的状态置为运行void output。int i;Sort(); 先排好序再打印输出printf(t进程名优先级到达时间运行时间已用时间进程状态n);for(i=0;i vn ;i+)pri ntf(%8s%10d%10d%10d%10d%10cn,ai. name,ai.priority,ai.starttime,ai. need time,ai.cputime,

5、ai.state);pri ntf(nn);void RR()每次运行进程只针对排好序后的第一个进程即第0号元素当第一个进程运行完一个时间片优先级减一后再对进程进行按到达系统时间和优先级排序,所以实现了根据优先级的时间片轮转执行进程doif(a0. needtime-a0.cputime)t) 若剩余时间大于时间片aO.cputime+=t;a0.priority-; 优先级减一aO.state=W; 执行完一个时间片后变为等待状态已用时间加上时间片 elsea0.cputime=a0. needtime;/已用时间等于运行时间 a0.priority=-10000;优先级为-10000,表示

6、完成进程 a0.state=F;output。;/打印结果,函数内部含有排序算法 while(a0.state! = F);int mai n()printf(请输入进程数n:);sca nf(%d,&n);prin tf(n);printf(请输入时间片大小t:);sca nf(%d, &t);prin tf(n);in put();output。;/输入进程按排序后显示,函数内部含有排序算法RR();四、实验结果及分析 C;U i&r5Adm i nitnat or.PC201-40913 QR DDesktopDebu g2 exe请输入进程数n泊请输入时间片大小无次请第第第第进程名优先

7、级到达时间运行时间已用时间进程状态进程名ac优先级到达时间运行时间324331已用时间100进程状态R2甘进程名c优先级到达时间运行时间331已用时间进程状态R4240R C:Use rsAdmiri i?tra tor.PC20140913QR DDesktopDe b g2. exeB进程名优先级邸IMS隹行时nr已用时间进程状态c3310Ra2242Ub1220Ud1430U进程名优先级到达时间运行时间已用时间进程状态a2242Rb1220Ud1430Uc10000311F进程名优先级到达时间运行时间已用时间进程状态a1243Rb1220d1430c-10000311F进程名优先级到达时

8、间运行时间已用时间进程状态b1220Rd143011a-10000244F ,R.ercnir 5tid:o-.FC-2314091BQRDD3DebugZejb122eRd143eVa-10000244FC-10000311F进程名优先级到达时间运行时间已用时间进程狀态d143eRb0221Ua-10000244Fc-10000311F进程名优先级到达时间运行时间已用时间进程状态b0221Rd0431Ua-10000244FC-10000311F进程名优先级到达时间运行时间已用时间进程状态d0431Rb-10000222Fa-10000244Fc-10000311F C:Useredm i

9、n istrator.PC2 0140913 QR DDesktopDebu gV - ex:e进程名 优先级到达时间运行时间已用时间进程状态d0b-10000a-10000c-10000422332411 R2 F4FiF进程名优先级到达时间运行时间已用时间进程状态d.1432Rb-1000022ZFa-10000244Fc-10000311F进程名优先级到达时间运行时间已用时间进程狀态b-10000222Fa-10000244Fc-10000311Fd-10000433FPress Hny key to continue五、实验体会、问题讨论在多道程序中,调度的实质是一种资源分配,处理机调度是对处理机资源进行分配。 处理机调度算法是指根据处理机分配策略所规定的处理机分配算法。在多道批处理机系 统中,一个作业从提交到获得处理机执行,知道作业运行完毕,可能需要经历多级处理 机调度。教师签字:批改日期:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号