编译原理实验指导书

  • 格式:doc
  • 大小:409.00 KB
  • 文档页数:68

2010-2011学年 第 一 学期

《操作系统

原理》实验指导书

授课教师:屠菁

计算机科学与技术系

2010年9月 目录

《操作系统原理》实验教学大纲(修订)............................................... 错误!未定义书签。

实验考核方式与基本要求........................................................................... 错误!未定义书签。

实验一 进程控制描述与控制..................................................................... 错误!未定义书签。

实验二 并发与调度..................................................................................... 错误!未定义书签。

实验三 存储管理......................................................................................................................... 31

实验四 设备管理......................................................................................... 错误!未定义书签。

实验五 文件管理与系统安全..................................................................... 错误!未定义书签。

附录 实验报告参考规范............................................................................. 错误!未定义书签。 《操作系统管理》实验指导书

1 《操作系统原理》实验教学大纲(修订)

课程编号:

课程名称:操作系统原理

实验学时:14

一、本实验课的性质、任务与目的

操作系统作为计算机专业的一门专业基础课,是计算机专业的核心课程之一,学好与否直接关系到学生是否能更好地学习后续课程。通过本实验课程的学习,使学生理解与掌握操作系统设计所遵循的基本原理,基本方法,建立多道程序设计环境下的并行程序设计的思维方式。此外,操作系统用到的各种算法也是学生加强算法锻炼的好机会,对日后从事系统开发方面的工作有直接的借鉴作用。

本实验课程在操作系统原理课程教学中占有重要地位,目的是让学生及时掌握和巩固所学的基本原理和基础理论,加深理解。提高学生自适应能力,为将来使用和设计各类新的操作系统打下良好的基础。

二、本实验课所依据的课程基本理论

计算机操作系统,操作系统中所介绍的重要算法。

三、实验类型与要求

序号 实验内容 内容提要 实验要求 实验

时数 实验

类型 每组

人数 所在实验室名称 备注

一 进程控制描述与控制 操作系统界面、进程管理 必修 2 验证 2 系机房

二 并发与调度 进程并发、进程状态转换 必修 2 验证 2 系机房

三 存储管理 内存空间分配及虚拟存储器 必修 2 验证 2 系机房

四 设备管理 设备分配与回收 必修 2 验证 2 系机房

文件管理与系统安全 文件系统目录结构,文件操作及操作系统安全 任选 2 验证 2 系机房

六 操作系统功能模拟设计实验

操作系统功能模拟设计并实现

必修 4 设计 3-4 系机房

四、每组人数与实验学时数

序号 实验内容 实验时数 每组人数

一 进程控制描述与控制 2 2

二 并发与调度 2 2

三 存储管理 2 2

四 设备管理 2 2

五 文件管理与系统安全 2 2

六 操作系统功能模拟设计实验 4 3-4

五、考核方式与评分办法

考核方式:在规定时间内,按要求设计相应的模拟系统并上机调试运行,写出详细的实验报告,在机上向教师演示自己设计的模拟系统。

评分办法:视程序的质量、完成速度及实验报告分别给予优、良、中、及格、不及格等成绩。

六、本实验课配套教材或实验指导书

[1]周苏,金海溶等编著,操作系统原理实验,北京:科学出版社,2003

七、实验报告要求

实验题目、问题描述、算法说明、算法框图、数据结构及符号说明、程序清单及运行结果。

八、其它

教研室:计算机网络 执笔人:钟伯成 系主任审核签名:

《操作系统管理》实验指导书

3 实验考核方式与基本要求

1) 按要求设计相应的模拟系统并上机调试运行

2) 写出详细的实验报告,实验报告要求如下:

(1)实验题目。

(2)程序中使用的数据结构及符号说明。

(3)流程图。

(4)打印一份源程序并附上注释。

(5)打印程序运行时的初值和运行结果。

基本要求:3或4人为一小组,采取课内上机和业余上机相结合的方式进行,在规定时间内每个小组以论文形式上交实验(设计)结果并上机演示说明。

实验考核题目

㈠ 进程管理

㈡ 模拟PV操作同步机构,且用PV操作解决生产者——消费者问题。

㈢ 银行家算法

㈣ 模拟分页式存储管理中硬件的地址转换和产生缺页中断。

㈤ 用先进先出(FIFO)页面调度算法处理缺页中断。

㈥ 用最近最少用(LRU)页面调度算法处理缺页中断。

㈦ 设计一个按优先数调度算法实现处理器调度的进程。

㈧ 设计一个按时间片轮转法实现处理器调度的程序。

㈨ 模拟实现一个简单的固定(或可变)分区存储管理系统

㈩ 模拟实现单通路I/O系统中的设备分配程序。

{十一} 模拟实现用位示图法管理文件存储空间的分配与回收。

实验提示

㈠ 进程管理

1.实验内容

至少要有:创建新的进程;查看运行进程;换出某个进程;杀死运行进程以及进程之间通信等功能。

2.实验提示

PCB结构通常包括以下信息:进程名,进程优先数,轮转时间片,进程所占用的CPU时间,进程的状态,当前队列指针等。可根据实验的不同,PCB结构的内容可以作适当的增删。 例:实验运行结果

********************************************

* 进程演示系统 *

********************************************

1.创建新的进程 2.查看运行进程

3.换出某个进程 4.杀死运行进程

5.进程之间通信 6.退出系统

********************************************

请选择(1~6)

然后根据你选择的不同,出现不同的结果。

㈡ 第一题:模拟PV操作同步机构,且用PV操作解决生产者——消费者问题。

㈢ 第二题:银行家算法

实验提示

[第一题]:在系统初始化时应把信号量semaphore定义为某个类型,为简单起见,在模拟实验中可把上述的semaphore直接改成integer。

生产者——消费者问题。

假定有一个生产者和消费者,生产者每次生产一件产品,并把生产的产品存入共享缓冲器以供消费者取走使用。消费者每次从缓冲器内取出一件产品去消费。禁止生产者将产品放入已满的缓冲器内,禁止消费者从空缓冲器内取产品。假定缓冲器内可同时存放10件产品。

进程控制块PCB。

在模拟实验中,假设进程控制块的结构如下图。其中进程的状态有:运行态、就绪态、等待态和完成态。当进程处于等待态时,在进程控制块PCB中要说明进程等待原因(在模拟实验中进程等待原因为等待信号量s1或s2);当进程处于等待态或就绪态时,PCB中保留了断点信息,一旦进程再度占有处理器则就从断点位置继续运行;当进程处于完成状态,表示进程执行结束。

处理器的模拟。

计算机硬件提供了一组机器指令,处理器的主要职责是解释执行机器指令。为了模拟生产者和消费者进程的并发执行,我们必须模拟一组指令和处理器职能。

模拟的指令 功能

P(s) 执行P操作原语

V(s) 执行v操作原语

put B[IN]:=product;IN:=(IN+1) mod 10

GET X:=B[out];out:=(out+1) mod 10 进程名

状态

等待原因

断点 《操作系统管理》实验指导书

5 produce 输入一个字符放入C中

consume 打印或显示x中的字符

GOTO L PC: L

NOP 空操作

模拟的处理器指令

模拟的一组指令见上图,其中每条指令的功能由一个过程来实现。用变量PC来模拟“指令计数器”,假设模拟的指令长度为1,每执行一条模拟指令后,PC加1,指出下一条指令地址。使用模拟的指令,可把生产者和消费者进程的程序表示为下图的形式。

序号 生产者程序 消费者程序

0 produce P(s2)

1 P(s1) GET

2 PUT V(s1)

3 V(s2) consume

4 goto 0 goto 0

生产者和消费者程序

定义两个一维数组PA[0..4]和SA[0..4],每一个PA[i]存放生产者程序中的一条模拟指令执行的入口地址;每个SA[i]存放消费者程序中的一条模拟指令执行的入口地址。于是模拟处理器执行一条指令的过程为:取出PC之值,按PA[PC] 或SA[PC]得模拟指令执行的入口地址,将PC之值加1,转向由入口地址确定的相应的过程执行。

[第二题]:编写银行家算法,要求对于书127页给出的资源分配表,可以对输入各种请求进行安全性判断,最后给出安全序列或者不能分配的原因。

㈣ 第一题:模拟分页式存储管理中硬件的地址转换和产生缺页中断。

㈤ 第二题:用先进先出(FIFO)页面调度算法处理缺页中断。

㈥ 第三题:用最近最少用(LRU)页面调度算法处理缺页中断。

实验提示

第一题[提示]

(1) 分页式虚拟存储系统是把作业信息的副本存放在磁盘上,当作业被选中时,可把作业的开始几页先装入主存且启动执行。为此,在为作业建立页表时,应说明哪些页已在主存,哪些页尚未装入主存,页表的格式为:

页号 标志 主存块号 在磁盘上的位置