实验指导书-处理机调度算法

实验指导书-处理机调度算法

ID:45792513

大小:232.98 KB

页数:24页

时间:2019-11-17

实验指导书-处理机调度算法_第1页
实验指导书-处理机调度算法_第2页
实验指导书-处理机调度算法_第3页
实验指导书-处理机调度算法_第4页
实验指导书-处理机调度算法_第5页
资源描述:

《实验指导书-处理机调度算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验1处理机调度算法设计一、实验目的处理机调度是处理机管理的核心内容。木实验耍求用高级语言编写模拟进程调度程序,以便加深理解有关进程控制快、进程队列等概念,并体会和了解进程调度算法的具体实施办法。二、实验内容编写一个进程调度模拟程序,实现以下调度算法:先来先服务调度,时间片轮转调度算法,短作业优先调度算法,最高响应比优先调度算法,多级反馈队列调度算法。三、实验要求1.设计进程控制块PCB的结构,通常应包括如下信息:进程名、进程优先数(或轮转时间片数)、进程已占用的CPU吋间、进程到完成还需耍的时间、进程的状态、当前队列指针等。2.能演示进程

2、调度过程。3•界面友好。4.实验报告书写请参考附录实验提不1•每个进程可冇三种状态;执行状态(RUN)、就绪状态(READY,包括等待状态)和完成状态(FINISH),并假定初始状态为就绪状态。2.主程序定义PCB结构和其他有关变量,每个调度算法用一个了程序实现。3.进程控制块结构参考:NAME进程标示符PRTO/ROUND——进程优先数/进程每次轮转的时间片数(设为常数2)CPUTIME——进程累计占用CPU的时间片数NEEDTTME——进程到完成还需要的时间片数STATE——进程状态NEXT——链指针注:⑴为了便于处理,程序屮进程的的运

3、行时间以时间片为单位进行计算;(2)各进程的优先数或轮转时间片数,以及进程运行时间片数的初值,均由用户在程序运行时给定。2.进程的就绪态和等待态均为链表结构。3.在优先数算法中,进程优先数的初值设为:50-NEEDTTME每执行一次,优先数减1,CPU时间片数加1,进程还需耍的时间片数减1。4.在轮转法中,采用固定时间片单位(两个时间片为一个单位),进程每轮转一次,CPU时间片数加2,进程还需要的时间片数减2,并退出CPU,排到就绪队列尾,等待下一次调度。附录:用多线程同步方法解决睡眠理发师问题(Sleeping-BarberProblem

4、)一、实验目的进程的同步是操作系统处理机管理的重要内容,本实验耍求学生理解生产者与消费者问题模型,掌握解决该问题的算法思想,学会使用同步机制。—>实验内容理发店理冇一位理发师、一把理发椅和n把供等候理发的顾客坐的椅子如果没冇顾客,理发师便在理发椅上睡觉一个顾客到來时,它必须叫醒理发师,如果理发师正在理发时又有顾客来到,则如果有空椅子可坐,就坐下来等待,否则就离开。三、实验要求1•操作系统:Linux2.程序设计语言:C语言3•设有一个理发师,5把椅了(另外还有一把理发椅),几把椅了可用连续存储单元。4•为每个理发师/顾客产生一个线程,设计正

5、确的同步算法5•每个顾客进入理发室后,即时显示“Entered”及英线程自定义标识,还同时显示理发室共有儿名顾客及其所坐的位置。6•至少有10个顾客,每人理发至少3秒钟。目录1设计题目与要求51.1设计题目51.2设计要求51.2.1初始条件51.2.2技术要求52总体设计思想及开发环境与工具52.1总体设计思想52.2多线程编程原理62.2.1创建一个线程62.2.2等待一个线程结束72.2.3信号量72.3伪码实现72.4开发环境与工具93数据结构与模块说明93.1数据结构91.2程序模块说明93.2.1主函数模块93.2.2理发师模块

6、1()3.2.3顾客模块114源程序112.1用户名、源程序名和目标程序名114.2源程序代码125运行结果155.1运行步骤155.2运彳丁结果165.2.1编辑,编译和运行的过程图165.2.2错课部分截图175.2.3正确运行结果图176调试记录206.1调试记录206.2自我评析和总结217参考文献211设计题目与要求1.1设计题目用多线程同步方法解决睡眠理发师问题(Sleeping-BarberProblem)1.2设计要求1.2.1初始条件(1)操作系统:Linux(2)程序设计语言:C语言(3)设有一个理发师,5把椅子(另外还

7、有一把理发椅),几把椅子可用连续存储单元。1.2.2技术要求(1)为每个理发师/顾客产生一个线程,设计正确的同步算法(2)每个顾客进入理发室后,即时显示"Entered"及其线程自定义标识,还同时显示理发室共冇几名顾客及其所坐的位置。(3)至少有10个顾客,每人理发至少3秒钟。(4)多个顾客须共享操作函数代码。2总体设计思想及开发环境与工具2.1总体设计思想题目屮要求描述理发师和顾客的行为,因此需要两类线程barber()和customer()分别描述理发师和顾客的行为。其屮,理发师有活动有理发和睡觉两个事件;等待和理发二个事件。丿占里冇固

8、定的椅子数,上而坐着等待的顾客,顾客在到来这个事件时,需判断有没有空闲的椅子,理发师决定要理发或睡觉时,也要判断椅子上有没有顾客。所以,顾客和理发师之间的关系表现为:(1)理发师

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

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

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