操作系统实验指导说明

上传人:飞*** 文档编号:43665274 上传时间:2018-06-07 格式:DOC 页数:17 大小:132.50KB
返回 下载 相关 举报
操作系统实验指导说明_第1页
第1页 / 共17页
操作系统实验指导说明_第2页
第2页 / 共17页
操作系统实验指导说明_第3页
第3页 / 共17页
操作系统实验指导说明_第4页
第4页 / 共17页
操作系统实验指导说明_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《操作系统实验指导说明》由会员分享,可在线阅读,更多相关《操作系统实验指导说明(17页珍藏版)》请在金锄头文库上搜索。

1、天津大学仁爱学院计算机系天津大学仁爱学院计算机系操作系统原理操作系统原理实验报告实验报告题目:题目:XXXXXXXXXXXXXXXXXXXXXXXX指导老师:指导老师: 戴维迪戴维迪 姓名:姓名:学号:学号:班级:班级:完成日期:完成日期: 年 月 日操作系统操作系统课程实验要求:课程实验要求:1 1以下五个题目,按要求开展实验并完成相应的实验报告。以下五个题目,按要求开展实验并完成相应的实验报告。2 2实验上机时间为:待定,在上机时间检查每个同学的程序运实验上机时间为:待定,在上机时间检查每个同学的程序运行情况。行情况。3 3提交实验报告:提交实验报告:实验报告提交格式:实验报告提交格式:1

2、.1.实验内容实验内容 2.2.正文格式正文格式(1)(1)问题概述问题概述(2)(2)整体功能及设计整体功能及设计(3)(3)编程实现编程实现(4)(4)使用说明使用说明(5)(5)结果分析结果分析(6)(6)设计体会设计体会3.3.实验报告的提交实验报告的提交(1)(1)要求使用统一专用实验报告纸;要求使用统一专用实验报告纸;(2)(2)要求有封面,封面格式如前页;要求有封面,封面格式如前页;(3)(3)报告以打印稿或手写稿提供,报告以打印稿或手写稿提供,统一左边装订;统一左边装订;(4)(4)同时提交源程序和实验报告的电子版,以同时提交源程序和实验报告的电子版,以压缩包压缩包的形的形式发

3、送到:式发送到:信件及附件名称信件及附件名称:(例):(例)0707 软件软件 1 1 班班 6007201160072011 王宇王宇- -进进程调度算法模拟(没有空格)程调度算法模拟(没有空格)(名称不符合要求的请重新发送)(名称不符合要求的请重新发送)0707 级级*操作系统操作系统课程实验(一)课程实验(一)生产者生产者-消费者同步问题的算法实现消费者同步问题的算法实现一、一、 实验目的:实验目的:全面理解生产者与消费者问题模型,掌握解决该问题的算法思全面理解生产者与消费者问题模型,掌握解决该问题的算法思想,正确使用同步机制。想,正确使用同步机制。二、二、 实验内容实验内容:问题描述:

4、问题描述:一组生产者向一组消费者提供消息,它们共享一个一组生产者向一组消费者提供消息,它们共享一个有界缓冲池,生产者向其中投放消息,消费者从中取得消息。假定有界缓冲池,生产者向其中投放消息,消费者从中取得消息。假定这些生产者和消费者互相等效,只要缓冲池未满,生产者可将消息这些生产者和消费者互相等效,只要缓冲池未满,生产者可将消息送入缓冲池;只要缓冲池未空,消费者可从缓冲池取走一个消息。送入缓冲池;只要缓冲池未空,消费者可从缓冲池取走一个消息。功能要求功能要求:根据进程同步机制,编写一个解决上述问题的演示:根据进程同步机制,编写一个解决上述问题的演示程序,可显示缓冲池状态、放数据、取数据等过程。

5、程序,可显示缓冲池状态、放数据、取数据等过程。三、三、 编程工具:编程工具:C、Java、VC 或其它可视化语言或其它可视化语言平台任选平台任选.PQ个个个个个个n n个个个个(Buffer)ij四、四、 具体设计要求及有关说明具体设计要求及有关说明1有有 3 个生产者进程,分别为个生产者进程,分别为 P1、P2 和和 P3;2有有 4 个消费者进程,分别是个消费者进程,分别是 C1、C2、C3 和和 C4;3缓冲区单元个数缓冲区单元个数 N=15;4不同的生产进程可生产不同的产品(比如字母、数字、不同的生产进程可生产不同的产品(比如字母、数字、符号)符号) ;不同的消费进程可有不同的消费方式

6、(比如;不同的消费进程可有不同的消费方式(比如“显显示示” 、 “打印打印” 、 “拼接成字符串拼接成字符串” 、 “改变大小写改变大小写”等)等) 。自。自己可任意定义。己可任意定义。0707 级级*操作系统操作系统课程实验(二)课程实验(二)进程管理和调度的算法实现进程管理和调度的算法实现一、一、 实验目的实验目的进程调度是处理机管理的核心内容。本设计要求用高级语言编进程调度是处理机管理的核心内容。本设计要求用高级语言编写和调试一个简单的进程调度程序。通过本实验可以加深理解有关写和调试一个简单的进程调度程序。通过本实验可以加深理解有关进程控制块、进程队列的概念,并体会和了解优先权调度算法和

7、时进程控制块、进程队列的概念,并体会和了解优先权调度算法和时间片轮转调度算法的具体实施办法。间片轮转调度算法的具体实施办法。二、二、 实验内容实验内容1设计进程控制块设计进程控制块 PCB 表结构,分别适用于优先权调度算表结构,分别适用于优先权调度算法和时间片轮转调度算法。法和时间片轮转调度算法。2PCB 结构包括以下信息:进程名、进程优先数(或轮转结构包括以下信息:进程名、进程优先数(或轮转时间片)时间片) ,进程所占用的,进程所占用的 CPU 时间,进程的状态,当前时间,进程的状态,当前队列指针等。根据调度算法的不同,队列指针等。根据调度算法的不同,PCB 结构的内容可结构的内容可以作适当

8、的增删。以作适当的增删。3建立进程就绪队列。对两种不同算法编制入链子程序。建立进程就绪队列。对两种不同算法编制入链子程序。4编制两种进程调度算法:编制两种进程调度算法:a)优先数调度;)优先数调度;b)时间片轮)时间片轮转调度。允许用户在程序运行时选择使用某一种调度算转调度。允许用户在程序运行时选择使用某一种调度算法。法。三、三、 编程工具:编程工具:C、Java、VC 或其它可视化语言或其它可视化语言平台任选平台任选四、四、 具体设计要求及有关说明具体设计要求及有关说明选用优先数算法和简单时间片轮转法对五个进程进行调度,每选用优先数算法和简单时间片轮转法对五个进程进行调度,每个进程可有三种状

9、态:运行状态(个进程可有三种状态:运行状态(RUN) 、就绪状态(、就绪状态(READY)和)和完成状态。并假定初始状态为就绪状态。完成状态。并假定初始状态为就绪状态。1设计进程控制块设计进程控制块 PCB 结构如下:结构如下:NAME/进程标识符;进程标识符;PRIO/ROUND/ PRIO 表示进程优先数,表示进程优先数,ROUND 表示表示进程轮转时间片大小;进程轮转时间片大小;CPUTIME/进程占用进程占用 CPU 时间;时间;COUNT/计数器;计数器;NEEDTIME/进程到完成还要的进程到完成还要的 CPU 时间;时间;STATE/进程的状态;进程的状态;NEXT/链指针链指针

10、2进程控制块链结构如图所示。进程控制块链结构如图所示。READYFINISHRUNTAIL其中:其中:RUN当前运行进程指针;当前运行进程指针;READY就绪队列头指针;就绪队列头指针;TAIL就绪队列尾指针;就绪队列尾指针;FINISH完成队列头指针。完成队列头指针。为了便于处理,程序中进程的运行时间以时间片为单位计算。为了便于处理,程序中进程的运行时间以时间片为单位计算。各进程的优先数或轮转时间片数以及进程需运行的时间片数的初值各进程的优先数或轮转时间片数以及进程需运行的时间片数的初值均由用户给定。均由用户给定。3程序说明:程序说明:a)在优先数算法中,进程每执行一次,优先数减)在优先数算

11、法中,进程每执行一次,优先数减 3,CPU 时时间片数加间片数加 1,进程还需要的时间片数减,进程还需要的时间片数减 1。在轮转法中,采用固定时。在轮转法中,采用固定时间片,时间片数为间片,时间片数为 2,进程每执行一次,进程每执行一次,CPU 时间片数加时间片数加 2,进程,进程还需要的时间片数减还需要的时间片数减 2,并排到就绪队列的尾上。,并排到就绪队列的尾上。b)程序结构说明如下:)程序结构说明如下:整个程序由整个程序由CREATE,FIRSTIN,INSERT1,INSERT2,PRINT,PRISCH和和 ROUNDSCH 过程组成。其中:过程组成。其中:CREATE 的功能是创建

12、新的进程,即创立进程的的功能是创建新的进程,即创立进程的 PCB,并将,并将此此 PCB 链入到就绪队列中去。链入到就绪队列中去。FIRSTIN 的功能是将就绪队列中的第一个进程投入运行。的功能是将就绪队列中的第一个进程投入运行。INSERT1 的功能是把还未完成且优先数小于别的进程的功能是把还未完成且优先数小于别的进程 PCB 按按进程优先数的顺序插入到就绪队列中。进程优先数的顺序插入到就绪队列中。INSERT2 是轮转法使用的过程,将执行了一个单位时间片数是轮转法使用的过程,将执行了一个单位时间片数(为(为 2)且还未完成的进程的)且还未完成的进程的 PCB 插入到就绪队列的队尾。插入到就

13、绪队列的队尾。PRINT 打印每执行一次后的所有进程的状态,这里,就绪(等打印每执行一次后的所有进程的状态,这里,就绪(等待)用待)用“W”代表。代表。PRISCH 按优先数算法调度进程。按优先数算法调度进程。ROUNDSCH 按时间片轮转法调度进程。按时间片轮转法调度进程。c)主程序中定义了)主程序中定义了 PCB 的结构和其它变量的结构和其它变量 NUMBER进进程数,程数,ALGO 为为 10 个字符长的字符串,存放要求输入的算法的名,个字符长的字符串,存放要求输入的算法的名,输入输入“PRIORITY”表示调用优先数算法,输入表示调用优先数算法,输入“ROUNDROBIN”表示调用循环

14、轮转法,要求用户在程序运行时表示调用循环轮转法,要求用户在程序运行时输入其中的一个。输入其中的一个。0707 级级*操作系统操作系统课程实验(三)课程实验(三)内存管理和分配算法模拟内存管理和分配算法模拟一、一、 实验目的实验目的页面置换算法的好坏直接关系到系统运行的效率。本设计要求页面置换算法的好坏直接关系到系统运行的效率。本设计要求用高级语言编写和调试一个简单的内存页面调度程序。通过本实验用高级语言编写和调试一个简单的内存页面调度程序。通过本实验可以加深理解有关最佳置换算法、先进先出置换算法和最近最久未可以加深理解有关最佳置换算法、先进先出置换算法和最近最久未使用置换算法的概念,并体会和了

15、解这三种页面置换算法的具体实使用置换算法的概念,并体会和了解这三种页面置换算法的具体实施办法。施办法。二、二、 实验内容实验内容1 页面流如下:页面流如下:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,12 首先利用最佳置换算法求出理想状态下的缺页率。再将先进先出首先利用最佳置换算法求出理想状态下的缺页率。再将先进先出算法和最近最久未使用算法与最佳置换算法做比较,说明哪个缺页算法和最近最久未使用算法与最佳置换算法做比较,说明哪个缺页率较低。率较低。3 假设所用的物理块个数分别为假设所用的物理块个数分别为 3 和和 4。三、三、 实验要求实验要求1 物理块用数组物理块用数组 S表示,每次经过一个页面,须显示此时物理块中表示,每次经过一个页面,须显示此时物理块中的页面。的页面。2 设置计数变量设置计数变量 count,记录缺页次数。统计缺页率可用:置换次数,记录缺页次数。统计缺页率可用:置换次数/页面总数求得。页面总数求得。四、四、 编程工具:编程工具:C、Java、VC 或其它可视化语言或其它可视化语言平台任选平台任选0707 级级*操作系统操作系统课程实验(四)课程实验(四)磁盘调度算法模拟磁盘调度算法模拟一、一、 实验

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号