还剩8页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
实验一进程调度实验专业软件工程1102绪束a01克克b-10束c-10d-10一束e-10克克按回车键,进行下一步克克结结结进程名优先数运行所需时间樨一结a-10结结b-10结结c—10d-10一e10按回车键,进行下一步结果分析
2.优先级数高的先运行一次,然后优先级减一,运行时间减一优先级相同的时候先运行后面的
六、实验总结通过本次试验了解了处理机调度的工作代码运行到最后,对于一些数据处理的不是很好,有时会出现问题,望老师见谅S.
一、实验目的本实验模拟在单处理机情况下的处理机调度,帮助学生了解处理机调度的工作
二、实验要求编写程序实现对5个进程的调度模拟
三、实验方法内容算法设计思路
1.1假定系统有5个进程,每个进程用一个PCB来代表PCB的格式为进程名、指针、要求运行时间、优先数、状态进程名——P1〜P5指针一一按优先数的大小把5个进程连成队列,用指针指出下一个进程PCB的首地址要求运行时间一一假设进程需要运行的单位时间数优先数一一赋予进程的优先数,调度时总是选取优先数大的进程先执行状态一一假设两种状态,就绪,用R表示,和结束,用E表示初始状态都为就绪状态2每次运行之前,为每个进程任意确定它的“优先数”和“要求运行时间”3处理器总是选队首进程运行采用动态改变优先数的办法,进程每运行1次,优先数减1,要求运行时间减14进程运行一次后,若要求运行时间不等于0,则将它加入队列,否则,将状态改为“结束”,退出队列5若就绪队列为空,结束,否则,重复3算法流程图
2.其中子程序流程图:run开始定义i,j,tj=0jnumt+=pcbl ist[j].runtimej=j+l/输出提示/show getcharmax_pri_process!-1二pcblist[max_pri_process].state T算法中用到的数据结构
3.#dcfinc num5〃假定系统中进程个数为5struct PCB{char ID;//进程名int runtime;//要求运行时间int pri;//优先数char state;//状态,R-就绪,F-结束;struct PCBpcblist[num];〃定义进程控制块数组
四、实验代码
五、实验结果执行结果
1.化版*D:\VC++
6.0^\VC6\MyPcojects\two\Debug\two.exe第[口个进程:进程名优先数运行所需时间第个进程:进程名]12优先数运行所需时间b45第个进程:进程名]13优先数运行所需时间c34优先数运行所需时间第个进程:进程名事]14优先数运行所需时间个进程:进程名e12产行之前,你所输入的条件如下/程名优先数运行所需时间状态绪a56绪b45绪c34绪d23绪e12按回车键,进行下一步进程名优先数运行所需时间绪a45绪b45绪c34绪d23绪e12按回车键,进行下一步进程名优先数运行所需时间a45b34c34d23e12按回车键,进行下一步绪a45绪b34c23绪d23绪e12按回车键,进行下一步绪进程名优先数运行所需时间绪绪a45绪b34c23d12e12按回车键,进行下一步进程名优先数运行所需时间a45绪绪b34c23绪d12e01按回车键,进行下一步进程名优先数运行所需时间绪a34绪b34c23绪d12绪e01按回车键,进行下一步绪-JOiUIDiDio-KiUloiD、型a34兀白氏b
23、者、否c23者氏、d12者氏者e
01、按回车键,进行下一步进程名优先数运行所需时间绪a34绪b23绪c12绪d12绪e01按回车键,进行下一步进程名优先数运行所需时间绪a34b23c12绪d01e01绪按回车键,进行下一步绪绪进程名优先数运行所需时间a34b23c12绪d01绪e-10绪重按回车键,进行下一步ffv.-cV-ffx-DioiDi4DiDioi0^54423231201-10按回车键,进行下一步进程名优先数运行所需时间2312绪12望01-10按回车键,进行下一步进程名优先数运行所需时间23120101-10按回车键,进行下一步进程名优先数运行所需时间绪23绪1201结-10-10按回车键,进行下一步绪12绪1201结-10-10按回车键,进行下一步日程名优先数运行所需时间绪绪12结0101-10-10按回车键,进行下一步日程名优先数运行所需时间绪绪12克克01克-10-10结结-10按回车键,进行下一步左程名优先数运行所需时间绪绪01克克01克-10-10结结-10按回车键,进行下一步。
个人认证
优秀文档
获得点赞 0