实现模拟进程调度的算法:时间片轮转及短进程优先

实现模拟进程调度的算法:时间片轮转及短进程优先

ID:6697807

大小:571.50 KB

页数:20页

时间:2018-01-22

实现模拟进程调度的算法:时间片轮转及短进程优先_第1页
实现模拟进程调度的算法:时间片轮转及短进程优先_第2页
实现模拟进程调度的算法:时间片轮转及短进程优先_第3页
实现模拟进程调度的算法:时间片轮转及短进程优先_第4页
实现模拟进程调度的算法:时间片轮转及短进程优先_第5页
资源描述:

《实现模拟进程调度的算法:时间片轮转及短进程优先》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、操作系统课程设计报告时间:2011-12-26~2012-1-6地点:信息技术实验中心计算机科学与技术(或软件工程)专业xxx级xxx班xx号xxxxxxxx目录一课程设计的目的和意义………………………………………………………二进程调度算法模拟……………………………………………………………1设计目的………………………………………………………………………2设计要求………………………………………………………………………3时间片轮转算法模拟…………………………………………………………4先来先服务算法模拟…………………………………………………………三主存空间的回收与分配………………

2、………………………………………1设计目的………………………………………………………………………2设计要求………………………………………………………………………3模拟算法的实现………………………………………………………………四模拟DOS文件的建立和使用…………………………………………………1设计目的………………………………………………………………………2设计要求………………………………………………………………………3模拟算法的实现………………………………………………………………五磁盘调度………………………………………………………………………1设计目的…………………………………

3、……………………………………2设计要求………………………………………………………………………3模拟算法的实现………………………………………………………………六总结……………………………………………………………………………一、课程设计的目的和意义本次操作系统课程设计的主要任务是进行系统级的程序设计。本课程设计是操作系统原理课程的延伸。通过该课程设计,使学生更好地掌握操作系统各部分结构、实现机理和各种典型算法,加深对操作系统的设计和实现思路的理解,培养学生的系统设计和动手能力,学会分析和编写程序。课程设计的实施将使学生在以下几个方面有所收获:(1)加深对操作系统原理的理解,提高

4、综合运用所学知识的能力;(2)培养学生自主查阅参考资料的习惯,增强独立思考和解决问题的能力;(3)通过课程设计,培养严谨的科学态度和协作精神。二、进程调度算法模拟1、设计目的(1)要求学生设计并实现模拟进程调度的算法:时间片轮转及短进程优先。(2)理解进程控制块的结构。(3)理解进程运行的并发性。(4)掌握进程调度算法。2、设计要求在多道程序运行环境下,进程数目一般多于处理机数目,使得进程要通过竞争来使用处理机。这就要求系统能按某种算法,动态地把处理机分配给就绪队列中的一个进程,使之运行,分配处理机的任务是由进程调度程序完成的。一个进程被创建后,系统为了便于对进程进行管理,

5、将系统中的所有进程按其状态,将其组织成不同的进程队列。于是系统中有运行进程队列、就绪队列和各种事件的进程等待队列。进程调度的功能就是从就绪队列中挑选一个进程到处理机上运行。进程调度的算法有多种,常用的有优先级调度算法、先来先服务算法、时间片轮转算法。3、时间片轮转算法模拟(1)时间片算法概述时间片轮转调度是一种最古老,最简单,最公平且使用最广的算法。每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。如果在时间片结束时进程还在运行,则CPU将被剥夺并分配给另一个进程。如果进程在时间片结束前阻塞或结束,则CPU当即进行切换。调度程序所要做的就是维护一张就绪进程列

6、表,当进程用完它的时间片后,它被移到队列的末尾。(2)时间片算法流程图图1-1时间片算法流程图(3)时间片算法模拟设计要求Ø进程的调度采用时间片轮转算法。Ø设计三个链队列,分别用来表示运行队列、就绪队列和完成队列。Ø用户输入进程标识符以及进程所需的时间申请空间存放进程PCB信息。Ø输出的格式和上面的运行结果分析中的格式相同。时间片轮转调度,具体做法是调度程序每次把CPU分配给就绪队列首进程使用一个时间片。当这个时间片结束时,就强迫一个进程让出处理器,让它排列到就绪队列的尾部,等候下一轮调度。实现这种调度要使用一个间隔时钟。当一个进程开始运行时,就将时间片的值置入间隔时钟内,

7、当发生间隔时钟中断时,就表明该进程连续运行的时间已超过一个规定的时间片。此时,中断处理程序就通知处理器调度进行处理器的切换工作。(4)算法模拟程序的关键代码while(!threads.isEmpty()){if(threads.get(0).getPCB().getTimed()<=threads.get(0).getPCB().getTimePian()){threads.get(0).run();finished.add(threads.get(0));threads.remove(0);}else{thre

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

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

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