linux操作系统课程设计—进程调度-优先数法与简单轮转法

linux操作系统课程设计—进程调度-优先数法与简单轮转法

ID:9202627

大小:352.00 KB

页数:18页

时间:2018-04-22

linux操作系统课程设计—进程调度-优先数法与简单轮转法_第1页
linux操作系统课程设计—进程调度-优先数法与简单轮转法_第2页
linux操作系统课程设计—进程调度-优先数法与简单轮转法_第3页
linux操作系统课程设计—进程调度-优先数法与简单轮转法_第4页
linux操作系统课程设计—进程调度-优先数法与简单轮转法_第5页
资源描述:

《linux操作系统课程设计—进程调度-优先数法与简单轮转法》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、[键入文字]Linux操作系统课程设计报告BX吴沛儒《操作系统原理》课程设计报告姓名:吴沛儒班级:BX0907学号:9指导老师:胡静二〇一一年十二月十二日[键入文字]Linux操作系统课程设计报告BX吴沛儒目录一、《操作系统原理》课程设计的目的与要求31、目的32、要求3二、简述课程设计内容、主要功能和实现环境31.课程设计内容3三、任务的分析、设计、实现和讨论31、任务的分析32、任务的设计与实现5五、附录11[键入文字]Linux操作系统课程设计报告BX吴沛儒进程调度—优先数法与简单轮转法一、《操作系统原理》课程设计的目的与要求1、目的进程是操作系统最重要的概念之一,

2、进程调度又是操作系统核心的主要内容。本实习要求学生独立地用高级语言编写和调试一个简单的进程调度程序。调度算法可任意选择或自行设计。任务一采用简单轮转法,任务二采用优先数法等。本课题可以加深对进程调度和各种调度算法的理解。2、要求(1)设计一个有n个进程并发的进程调度程序。每个进程由一个进程控制块(PCB)表示。进程控制块一般应该包含下述信息:进程名、进程优先数、进程需要运行的时间、占用CPU的时间以及进程的状态等,且可按调度算法的不同而增删。(2)调度程序应包含2种不同的调度算法,运行时可任意选一种,以利于各种算法的分析比较。(3)算法应能显示或打印各个进程的PID、状态

3、(运行状态R、等待状态W等)和参数(已运行时间等)的变化情况,便于观察诸进程的调度过程进程是操作系统最重要的概念之一,进程调度又是操作系统核心的主要内容。本实习要求学生独立地用高级语言编写和调试一个简单的进程调度程序。调度算法可任意选择或自行设计。任务一采用简单轮转法,任务二采用优先数法等。本课题可以加深对进程调度和各种调度算法的理解。二、简述课程设计内容、主要功能和实现环境1.课程设计内容进程调度是处理机管理的核心内容。本实验要求用C语言编写和调试一个简单的进程调度程序。选用优先数法或简单轮转法对五个进程进行调度。每个进程处于运行R(run)、就绪W(wait)和完成F

4、(finish)三种状态之一,并假设起始状态都是就绪状态W。为了便于处理,程序进程的运行时间以时间片为单位计算。各进程的优先数或轮转时间片数、以及进程需要运行的时间片数,均由伪随机数发生器产生。通过本实验可以加深理解有关进程控制块、进程队列的概念,并体会和了解优先数和时间片轮转调度算法的具体实施办法。2.主要功能本程序可选用优先数法或简单轮转法对五个进程进行调度。每个进程处于运行R(run)、就绪W(wait)和完成F(finish)三种状态之一,并假设起始状态都是就绪状态W。为了便于处理,程序进程的运行时间以时间片为单位计算。3.实现环境本次课程设计结合算法的特点,采用

5、Windows操作系统平台。开发工具为MicrosoftVisualC++6.0。三、任务的分析、设计、实现和讨论1、任务的分析本程序可选用优先数法或简单轮转法对五个进程进行调度。每个进程处于运行R(run)、就绪W(wait)和完成F(finish)三种状态之一,并假设起始状态都是就绪状态W。为了便于处理,程序进程的运行时间以时间片为单位计算。各进程的优先数或轮转时间片数、以及进程需要运行的时间片数,均由伪随机数发生器产生。下面介绍优先数法和简单轮转法两种进程调度算法:[键入文字]Linux操作系统课程设计报告BX吴沛儒(1)优先数法。进程就绪链按优先数大小从高到低排列

6、,链首进程首先投入运行。每过一个时间片,运行进程所需运行的时间片数减1,说明它已运行了一个时间片,优先数也减3,理由是该进程如果在一个时间片中完成不了,优先级应该降低一级。接着比较现行进程和就绪链链首进程的优先数,如果仍是现行进程高或者相同,就让现行进程继续进行,否则,调度就绪链链首进程投入运行。原运行进程再按其优先数大小插入就绪链,且改变它们对应的进程状态,直至所有进程都运行完各自的时间片数。(2)简单轮转法。进程就绪链按各进程进入的先后次序排列,进程每次占用处理机的轮转时间按其重要程度登入进程控制块中的轮转时间片数记录项(相当于优先数法的优先数记录项位置)。每过一个时

7、间片,运行进程占用处理机的时间片数加1,然后比较占用处理机的时间片数是否与该进程的轮转时间片数相等,若相等说明已到达轮转时间,应将现运行进程排到就绪链末尾,调度链首进程占用处理机,且改变它们的进程状态,直至所有进程完成各自的时间片。进程控制块结构如下:进程ID链指针优先数/轮转时间片数占用CPU时间片数进程所需时间片数进程状态进程控制块链结构如下:TAILRUN1…RHEAD3…W5…W2…W其中:RUN—当前运行进程指针;HEAD—进程就绪链链首指针;TAID—进程就绪链链尾指针。1、任务的设计与实现算法流程图:[键入文字]

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

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

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