操作系统课程设计题目_第1页
操作系统课程设计题目_第2页
操作系统课程设计题目_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、辽宁科技大学操作系统课程设计指导书 一、课程设计目的和要求 本设计是专业基础课操作系统的课程设计。由于操作系统课的学时有限,安 排实验的次数不多。为了进一步巩固实验成果,加强理论联系实际、分析问题、解决 问题的能力,加深对操作系统的基本概念、原理、技术和方法的理解,特安排此次课 程设计。它是操作系统课程的实践环节。由于具体的操作系统相当复杂,在短短的一 周之内,不可能对所有管理系统进行详细地分析。因此,选择了操作系统中最重要的 管理之一进程管理(或进程的死锁、页面置换算法)作为本设计的任务。另外,通过 此次设计使学生在使用系统调用的同时,进一步了解系统内部是如何实现系统调用的 全过程,使学生在

2、更深层次上对操作系统有所了解。 要求: 1在具有自主版权的Linux环境下,用c或C+语言,以及相关的系统调用,编程实 现进程的创建、控制、软中断通信、管道通信等功能。 2. 利用某种高级语言编程实现银行家算法。 3. 常用的页面置换算法有:最佳置换算法( Optimal)、先进先出法(Fisrt In First Out)、最近最久未使用(Least Recently Used,至少实现其中的两种算法。 二、课程设计内容 设计题目 1:进程管理及理解 (1) 进程的创建 编写一段程序,使用系统调用fork ()创建两个子进程。当此程序运行时,在系统 中有一个父进程和两个子进程活动。让每一个进

3、程在屏幕上显示一个字符:父进程显示 a”子进程分别显示字符“b和 “c”试观察记录屏幕上的显示结果,并分析原因。 (2) 进程的控制 修改已编写的程序,将每个进程输出一个字符改为每个进程输出一句话,再观察程 序执行时屏幕上出现的现象,并分析原因。 如果在程序中使用系统调用lockf (),来给每一个进程加锁,可以实现进程之间的 互斥,观察并分析出现的现象。 (3) 编制一段程序,使其实现进程的软中断通信。 要求:使用系统调用fork ()创建两个子进程,再用系统调用 signal ()让父进程捕 捉键盘上来的中断信号;当捕捉到中断信号后,父进程用系统调用 kill ()向两个子进程 发出信号,

4、子进程捕捉到信号后分别输出下列信息后终止: Child Process11 is Killed by Paren!t Child Process12 is Killed by Parent! 父进程等待两个子进程终止后,输出如下的信息后终止: Parent Process is Killed! 在 上面的程序中 增加 系统调用 signal (SIGINT,SIG_IGN ) 和 signal (SIGQUIT,SIG_IGN) ,观察执行结果,并分析原因。 (4) 进程的管道通信 编制一段程序,实现进程的管道通信, 使用系统调用pipe ()建立一个管道文件;两个子进程P1和P2分别向管道各

5、写一 句话: Childl is sending a message Child2 is sending a message 而父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求父进程先接收子进程P1发来的消息,然后再接收子进程 P2发来的消息。 设计题目2:银行家算法实现资源分配 要求如下: (1) 进程可动态地申请资源和释放资源,系统按各进程的申请动态地分配资源。 (2) 要求程序具有显示和打印各进程的某一时刻的资源分配表和安全序列的功能。 (3) 显示和打印各进程依次要求申请的资源号以及为某进程分配资源后的有关资源数 据。 可能用到的数据结构: 可利用资源向量Availab

6、le。它是一个含有m个元素的数组,其中每个元素代表一 类可利用资源的数目。 最大需求矩阵Max。n*m矩阵,表示n个进程的每一个对m类资源的最大需求 分配矩阵Allocation 。 n*m矩阵,表示每个进程已分配的每类资源的数目。 需求矩阵Need。n*m矩阵,表示每个进程还需要各类资源数。 设计题目3:虚拟页面置换算法的实现 要求如下: (1) 至少实现OPT、FIFO、LRU三种置换算法中的两种。 (2) 做成GUI界面最好,若不能,则要求界面尽量友好,便于操作。 算法中涉及到的页面访问序列可以固定,也可以随机生成。 (4) 在实现算法的同时要计算每种算法的缺页数。 (5) 以表格的形式

7、输出最终的页面置换结果。 注:以上三个题目任选其一,还可以自拟其它题目。 选择题目1的同学,应事先了解 (1)Linux的命令及使用格式; 可通过下面的几个任务熟悉有关文件(夹)操作的命令。 任务1:显示/root |=|录的内容口 枉务2;在/root 口录下创建test门录。 任务3;切换到/root/test目录 任务4:用t创建-个a, txt文件并住文件里血输入hcl 1 o wcrrld! D 任务5:用gedi I创建一个b, txt文件,并在文件里面输入Hhow do you do! H * 任务6:将文件比kt的属性设資为所有人皆可读取。 任务7:删除b. txt文件. 枉务8:将文件a. txt复制到/root下勺 任务9:将/root/test U录卜的文件a. txt重命名为 任务10:将/root/t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论