武汉大学信息安全操作系统实验报告

武汉大学信息安全操作系统实验报告

ID:18725912

大小:706.27 KB

页数:25页

时间:2018-09-20

武汉大学信息安全操作系统实验报告_第1页
武汉大学信息安全操作系统实验报告_第2页
武汉大学信息安全操作系统实验报告_第3页
武汉大学信息安全操作系统实验报告_第4页
武汉大学信息安全操作系统实验报告_第5页
资源描述:

《武汉大学信息安全操作系统实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验一二三四五六七八九十总评成绩武汉大学计算机学院课程实验(设计)报告专业(班):计算机学院信息安全X班学号:姓名:XX课程名称:操作系统实验2013年5月30日实习一处理器调度一、实习内容选择一个调度算法,实现处理器调度。二、实习目的本实习模拟在单处理器环境下的处理器调度,加深了解处理器调度的工作。三、实习题目设计一个按优先数调度算法实现处理器调度的程序。四、实习内容1.设计思想(1)假定系统有5个进程,每个进程用一个PCB来代表。PCB的结构为:·进程名——如P1~P5。·指针——按优先数的大小把5个进程

2、连成队列,用指针指出下一个进程PCB的首地址。·要求运行时间——假设进程需要运行的单位时间数。·优先数——赋予进程的优先数,调度时总是选取优先数大的进程先执行。·状态——假设两种状态:就绪和结束,用R表示就绪,用E表示结束。初始状态都为就绪状态。(2)开始运行之前,为每个进程确定它的“优先数”和“要求运行时间”。通过键盘输入这些参数。(3)处理器总是选择队首进程运行。采用动态改变优先数的办法,进程每运行1次,优先数减1,要求运行时间减1。(4)进程运行一次后,若要求运行时间不等于0,则将它加入就绪队列,否则,

3、将状态改为“结束”,退出就绪队列。(5)若就绪队列为空,结束,否则转到(3)重复。要求能接受键盘输入的进程优先数及要求运行时间,能显示每次进程调度的情况,如哪个进程在运行,哪些进程就绪,就绪进程的排列情况。2.上机代码#include#include#definenum5//5个进程structPCB//进程控制块{charID;//进程名intruntime;//进程运行时间intpri;//进程优先级charstate;//进程状态};structPCBpcblist

4、[num];//进程控制块数组intfnum=0;//已运行完成的进程structPCBtemp;//在冒泡排序时用于替换的PCBvoidchushihua()//初始化程序{inti;for(i=0;i

5、tchar();}}voidshow()//显示当前进程状况程序{inti;printf("IDpriruntimestate");for(i=0;i

6、行总时间for(j=0;jpcblist[j+1].pri){temp=pcblist[j];pcblist[j]=pcbl

7、ist[j+1];pcblist[j+1]=temp;}for(j=num-1;j>=0;j--)//在排好序的进程中找到为就绪的最大优先级的进程{if(pcblist[j].state=='R')break;}if(pcblist[0].state=='R')//修改当前运行的进程的各项参数{pcblist[j].pri=pcblist[j].pri-1;pcblist[j].runtime=pcblist[j].runtime-1;printf("%s",&pcblist[j].ID);if(pcblis

8、t[j].runtime==0){pcblist[j].state='F';fnum++;}}show();}}intmain()//主函数{chushihua();show();run();return0;}五、上机实验所用平台及相关软件上机平台:Windows7+DEV-C++六、运行结果Q1—Q5分别是12345,经运行的顺序为Q2Q2Q2Q3Q3Q1Q1Q4Q1Q5Q5Q1Q1Q5Q5测试结

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

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

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