2022年《操作系统》实验讲义 .pdf
《2022年《操作系统》实验讲义 .pdf》由会员分享,可在线阅读,更多相关《2022年《操作系统》实验讲义 .pdf(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 操作系统实验讲义黑龙江大学计算机科学技术学院名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 13 页 - - - - - - - - - 2 操作系统实验讲义一.开设本课程实验目的为配合操作系统课程的教学,通过模拟操作系统原理的实现,使学生能更深刻地领会操作系统工作原理和操作系统实现方法,并提高程序设计能力,特开设此课程设计。二.课程实验的题目在 WINDOWS 环境下,利用高级语言模拟操作系统的实现。三.课程实验的主要内容模拟采用多道程序设计方法的单用户操作系统,该
2、操作系统包括进程管理、存储管理、设备管理和文件管理四部分。四.课程实验的具体内容和要求1进程管理进程管理主要包括进程控制、进程调度、进程的同步与互斥的模拟实现。(1)进程控制:建立一个交互式命令接口或图形接口的小型系统。用来模拟进程创建、终止、阻塞和唤醒等原语操作,实现进程的基本状态的转换。进程控制块内容包括进程标识符、主要寄存器内容、进程状态、等待原因、进程页表位置、中间结果等等(为以后扩充系统)。模拟系统最多容纳 10 个进程块。(2)进程调度:进程调度在模拟系统中,采用先来先服务、短进程优先、时间片轮转调度算法。我们可以根据创建进程的系统时钟,取相对时钟作为进程的到达时间, 利用随机数产
3、生每个进程的估计运行时间。利用模拟系统中提供的算法分别计算其相应的周转时间和带权周转时间。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 13 页 - - - - - - - - - 3 (3)进程同步:采用信号量机制,建立两个原语(如P,V 原语)用于实现进程的同步与互斥。用全局变量模拟重要寄存器,如程序状态寄存器等。中断的发现应该是硬件的工作, 这里在函数 CPU中加检测 PSW的方式来模拟。系统中的绝对时钟和相对时钟用全局变量模拟。2存储管理存储管理部分主要实现主存
4、空间的分配和回收、存储保护。模拟系统中,内存部分分为两部分,一部分是系统区,这里只存放进程控制块,一部分是用户区,这里主要是对用户区的管理。存储管理可以采用分区存储管理、请求分页式存储管理和请求分段式存储管理方式其中的一种, 我们建议采用请求分页式存储管理的方法。分页式存储管理系统是内存非连续存储管理中基本的方法,可以通过把一个作业分成多个页面分配到不连续的内存块中去。实验可以通过位示图的方式来模拟内存的使用情况,为每个作业建立页表用于完成正确的地址转换。然后在请求分页中实现页面置换算法,完成虚拟存储器的基本原理。3设备管理设备管理主要包括设备的分配和回收、实现设备独立性。假定模拟系统中有A(
5、3 台) 、B(2 台) 、C 三种设备,采用安全分配方式。设备管理子系统涉及到系统设备表(SDT) 、通道控制表( CHCT ) 、控制器控制表( COCT )和设备控制表( DCT)来体现输入输出系统的四级结构和三级控制。 我们模拟这样的数据结构来完成对外围设备的管理。设备分配必须满足设备的独立性要求。为了实现设备独立性,要求名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 13 页 - - - - - - - - - 4 在驱动程序之上设计一层设备无关软件,其主要功能
6、可分为:(1)执行所有设备的公有操作,主要包括:(a) 独占设备的分配与回收; (b) 将逻辑设备名映射为物理设备(LUT) ,进一步可以找到相应物理设备的驱动程序。(2)向用户层(或文件层)软件提供统一的接口。例如,对各种设备的读操作,在应用程序中都用read; 而对各种设备的写操作,则都使用 write。4文件管理文件管理部分实现的主要是单用户的磁盘文件管理部分,包括文件的逻辑结构、物理结构、目录管理、磁盘分配回收、用户接口的实现。具体要求:文件的逻辑结构:可分为定长记录的有结构文件和无结构文件。目录结构采用树型目录结构。磁盘的分配采用链接结构(显式链接)的分配。磁盘空闲存储空间管理采用位
7、示图方法。位示图和显示链接的指针合在一起组成文件分配表。五、教学文件及教学形式教学文件:计算机操作系统汤子瀛 编著 西安电子科技大学出版社教学形式:教学与实验同步进行,通过实验更好的理解课堂讲授的原理,加以上机实验,编程调试。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 13 页 - - - - - - - - - 5 实验一进程控制(一)实验目的:利用简单的结构和控制方法模拟进程结构、进程状态和进程控制。(二)实验内容与步骤:用 PCB表示整个进程实体,利用随机数方法
8、或键盘控制方法模拟进程执行中产生的事件。或者利用鼠标或者键盘中断的基于图形接口方式的进程控制管理。具体过程:1、定义 PCB (可以采用静态结构或动态结构) :包括理论 PCB 中的基本内容,如内部ID、外部 ID、进程状态、队列指针。由于无法实现真正的进程创建功能,在实验中只需建立PCB ,用它代表完整的进程。2、定义进程状态转换方式:进程的状态转换是由进程内部操作或操作系统的控制引起,由于无法实现这些功能,学生可以采用随机数方法或键盘控制方法模拟,并实现对应的控制程序。随机方法指产生 16 的随机数,分别代表创建进程(c) 、结束进程 (e) 、进程阻塞 (b) 、激活进程 (w) 、调度
9、进程 (p) 、时间片到 (t) 等事件;键盘模拟方法指定义6种按键代表以上6 种事件。3、根据四种事件处理就绪队列、阻塞队列和当前执行中的进程。4、每次事件处理后应形象地显示出当前系统中的执行进程是哪一个,就绪队列和阻塞队列分别包含哪些进程。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 13 页 - - - - - - - - - 6 实验二进程调度(一)实验目的:在实验一的基础上实现先来先服务FCFS 、短作业优先以及时间片轮转调度算法。(二)实验内容与步骤:我们可
10、以根据创建进程的系统时钟,取相对时钟作为进程的到达时间,利用随机数产生每个进程的估计运行时间。利用模拟系统中提供的算法分别计算其相应的周转时间和带权周转时间。具体过程:、 利用绝对时间和相对时钟产生一组进程的到达时刻和运行时间。、 实现 FCFS算法:根据进程的到达时间的先后次序来完成对若干进程的调度。、 实现算法:根据当前时间已经到达进程的需要运行时间选取其中时间最小的进程最先运行。、 实现时间片轮转算法:首先要求确定时间片的大小,依据进程的到达时间依次加入队列,每次分配一个时间片大小的时间,如果没有完成参与下一次的竞争,当最后需要一个小于等于时间片的时间时本进程完成,同时退出队列。、 计算
11、每种算法调度后,系统的平均周转时间和平均带权周转时间。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 13 页 - - - - - - - - - 7 实验三进程的同步与互斥(*) (一)实验目的:利用整型信号量实现生产者消费者问题,了解进程间同步和互斥的控制方法。(二)实验内容与步骤:利用内存固定单元分别存放Full 、Empty、Mutex 信号量值,并将生产的消息保存到长度为10 个字节的另一内存区域(缓冲区)中,每个字节表示一个消息。对该区域进行写(生产)或读(消
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 2022年操作系统实验讲义 2022 实验 讲义
限制150内