操作系统实验指导说明.doc
《操作系统实验指导说明.doc》由会员分享,可在线阅读,更多相关《操作系统实验指导说明.doc(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、天津大学仁爱学院计算机系操作系统原理实验报告题目:XXXXXXXXXXXX指导老师: 戴维迪 姓名:学号:班级:完成日期: 年 月 日操作系统课程实验要求:1以下五个题目,按要求开展实验并完成相应的实验报告。2实验上机时间为:待定,在上机时间检查每个同学的程序运行情况。3提交实验报告:实验报告提交格式:1. 实验内容 2. 正文格式(1)问题概述(2)整体功能及设计(3)编程实现(4)使用说明(5)结果分析(6)设计体会3. 实验报告的提交(1)要求使用统一专用实验报告纸;(2)要求有封面,封面格式如前页;(3)报告以打印稿或手写稿提供,统一左边装订;(4)同时提交源程序和实验报告的电子版,以
2、压缩包的形式发送到: 信件及附件名称:(例)07软件1班王宇-进程调度算法模拟(没有空格)(名称不符合要求的请重新发送)07级*操作系统课程实验(一)生产者-消费者同步问题的算法实现一、 实验目的:全面理解生产者与消费者问题模型,掌握解决该问题的算法思想,正确使用同步机制。二、 实验内容:问题描述:一组生产者向一组消费者提供消息,它们共享一个有界缓冲池,生产者向其中投放消息,消费者从中取得消息。假定这些生产者和消费者互相等效,只要缓冲池未满,生产者可将消息送入缓冲池;只要缓冲池未空,消费者可从缓冲池取走一个消息。功能要求:根据进程同步机制,编写一个解决上述问题的演示程序,可显示缓冲池状态、放数
3、据、取数据等过程。三、 编程工具:C、Java、VC或其它可视化语言平台任选四、 具体设计要求及有关说明1 有3个生产者进程,分别为P1、P2和P3;2 有4个消费者进程,分别是C1、C2、C3和C4;3 缓冲区单元个数N=15;4 不同的生产进程可生产不同的产品(比如字母、数字、符号);不同的消费进程可有不同的消费方式(比如“显示”、“打印”、“拼接成字符串”、“改变大小写”等)。自己可任意定义。07级*操作系统课程实验(二)进程管理和调度的算法实现一、 实验目的进程调度是处理机管理的核心内容。本设计要求用高级语言编写和调试一个简单的进程调度程序。通过本实验可以加深理解有关进程控制块、进程队
4、列的概念,并体会和了解优先权调度算法和时间片轮转调度算法的具体实施办法。二、 实验内容1 设计进程控制块PCB表结构,分别适用于优先权调度算法和时间片轮转调度算法。2 PCB结构包括以下信息:进程名、进程优先数(或轮转时间片),进程所占用的CPU时间,进程的状态,当前队列指针等。根据调度算法的不同,PCB结构的内容可以作适当的增删。3 建立进程就绪队列。对两种不同算法编制入链子程序。4 编制两种进程调度算法:a)优先数调度;b)时间片轮转调度。允许用户在程序运行时选择使用某一种调度算法。三、 编程工具:C、Java、VC或其它可视化语言平台任选四、 具体设计要求及有关说明选用优先数算法和简单时
5、间片轮转法对五个进程进行调度,每个进程可有三种状态:运行状态(RUN)、就绪状态(READY)和完成状态。并假定初始状态为就绪状态。1 设计进程控制块PCB结构如下:NAME/进程标识符;PRIO/ROUND/ PRIO表示进程优先数,ROUND表示进程轮转时间片大小;CPUTIME/进程占用CPU时间;COUNT/计数器;NEEDTIME/进程到完成还要的CPU时间;STATE/进程的状态;NEXT/链指针2 进程控制块链结构如图所示。READYFINISHRUNTAIL其中:RUN当前运行进程指针;READY就绪队列头指针;TAIL就绪队列尾指针;FINISH完成队列头指针。为了便于处理,
6、程序中进程的运行时间以时间片为单位计算。各进程的优先数或轮转时间片数以及进程需运行的时间片数的初值均由用户给定。3 程序说明:a)在优先数算法中,进程每执行一次,优先数减3,CPU时间片数加1,进程还需要的时间片数减1。在轮转法中,采用固定时间片,时间片数为2,进程每执行一次,CPU时间片数加2,进程还需要的时间片数减2,并排到就绪队列的尾上。b)程序结构说明如下:整个程序由CREATE,FIRSTIN,INSERT1,INSERT2,PRINT,PRISCH和ROUNDSCH过程组成。其中:CREATE的功能是创建新的进程,即创立进程的PCB,并将此PCB链入到就绪队列中去。FIRSTIN的
7、功能是将就绪队列中的第一个进程投入运行。INSERT1的功能是把还未完成且优先数小于别的进程PCB按进程优先数的顺序插入到就绪队列中。INSERT2是轮转法使用的过程,将执行了一个单位时间片数(为2)且还未完成的进程的PCB插入到就绪队列的队尾。PRINT打印每执行一次后的所有进程的状态,这里,就绪(等待)用“W”代表。PRISCH按优先数算法调度进程。ROUNDSCH按时间片轮转法调度进程。c)主程序中定义了PCB的结构和其它变量NUMBER进程数,ALGO为10个字符长的字符串,存放要求输入的算法的名,输入“PRIORITY”表示调用优先数算法,输入“ROUNDROBIN”表示调用循环轮转
8、法,要求用户在程序运行时输入其中的一个。07级*操作系统课程实验(三)内存管理和分配算法模拟一、 实验目的页面置换算法的好坏直接关系到系统运行的效率。本设计要求用高级语言编写和调试一个简单的内存页面调度程序。通过本实验可以加深理解有关最佳置换算法、先进先出置换算法和最近最久未使用置换算法的概念,并体会和了解这三种页面置换算法的具体实施办法。二、 实验内容1 页面流如下:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,12 首先利用最佳置换算法求出理想状态下的缺页率。再将先进先出算法和最近最久未使用算法与最佳置换算法做比较,说明哪个缺页率较低。3 假设所用的物理块个数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 实验 指导 说明
限制150内