设计一个按优先数调度算法实现处理器调度的程序.doc

设计一个按优先数调度算法实现处理器调度的程序.doc

ID:59320503

大小:152.50 KB

页数:12页

时间:2020-09-05

设计一个按优先数调度算法实现处理器调度的程序.doc_第1页
设计一个按优先数调度算法实现处理器调度的程序.doc_第2页
设计一个按优先数调度算法实现处理器调度的程序.doc_第3页
设计一个按优先数调度算法实现处理器调度的程序.doc_第4页
设计一个按优先数调度算法实现处理器调度的程序.doc_第5页
资源描述:

《设计一个按优先数调度算法实现处理器调度的程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验1处理器调度1、实验目的:在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就绪进程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器。本实验模拟在单处理器情况下的处理器调度,帮助学生加深了解处理器调度的工作。2、实验内容:用高级语言(要求C语言实验环境)编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解.按进程调度算法实现处理机调度。通过设计相应的数据结构建立进程控制块(PCB)和进程队列,采用先来先服务、优先数优先、轮转法,以及多级反馈轮转法等进程调度算法分别实现处理机

2、调度策略。3,实验题目:处理器调度4.流程图:(1)主程序流程图:结束调用运行子程序调用初始化子程序开始(2)子程序init()流程图:开始定义ii=0i

3、ipcblist[key].state=='F'return-1returnkey结束return-1i=i+1(4)子程序show()流程图:开始定义i输出提示i=0i

4、].state='r'i=0i

5、D;//进程名intruntime;//要求运行时间intpri;//优先数charstate;//状态,R-就绪,F-结束};structPCBpcblist[num];//定义进程控制块数组voidinit()//PCB初始化子程序{inti;for(i=0;i

6、ime);pcblist[i].state='R';//进程初始状态均为就绪getchar();//接收回车符}}intmax_pri_process()//确定最大优先级进程子程序{intmax=-100;//max为最大优先数,初始化为-100inti;intkey;for(i=0;i

7、就绪进程中选取优先数最大的进程{max=pcblist[i].pri;//max存放每次循环中的最大优先数key=i;//将进程号赋给key}}if(pcblist[key].state=='F')//具有最大优先数的进程若已运行完毕return-1;//则返回-1else//否则returnkey;//将key作为返回值返回}voidshow()//显示子程序{inti;printf("IDpriruntimestate");printf("------------------------------------

8、-------------");for(i=0;i

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

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

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