操作系统课程设计题目_第1页
操作系统课程设计题目_第2页
操作系统课程设计题目_第3页
操作系统课程设计题目_第4页
操作系统课程设计题目_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

本文格式为Word版,下载可任意编辑——操作系统课程设计题目操作系统课程设计

一、课程设计题目

实现一个模拟操作系统。二、课程设计的目的

通过模拟操作系统原理的实现,加深对操作系统工作原理理解,进一步了解操作系统的实现方法,并可练习合作完成系统的团队精神和提高程序设计能力。三、小组人数

建议3~4人一组共同完成模拟系统的实现。四、编程语言

建议使用VC、VB、C#、Java等Windows环境下的程序设计语言,以借助这些语言环境来模拟硬件的一些并行工作。五、课程设计内容

模拟采用多道程序设计方法的单用户操作系统,该操作系统包括进程管理、存储管理、设备管理、文件管理和用户接口四部分。六、课程设计具体要求和内容

1.文件管理和用户接口

文件管理和用户接口部分实现的主要是单用户的磁盘文件管理部分,包括文件的规律结构、物理结构、目录、磁盘分派回收、文件的保护和用户接口的实现。

⑴文件的规律结构

文件的规律结构采用流式结构;文件的内容均采用文本文件;

系统中有两种文件,一种是存放任意字符的文件,一种是可执行文件。可执行文件的内容就是模拟系统内进程的程序体。

文件中要有一种特定命令的“可执行〞文件,该文件中的命令有:x=?;给x赋值一位数x++;x加1x--;x减1

!??;第一个?为A,B,C中某个设备,其次个?为一位数,表示使用设备的时间(由于没有实际设备,所以无法知道设备何时工作完成,所以假定一个数,这个数随着系统时间增加而递减,减到0时,认为是设备工作完成);

end.表示文件终止,同时将结果写入文件out,其中包括文件路径名和x的值。⑵磁盘模拟

用一个文件disk1模拟磁盘c,用一个文件disk2模拟磁盘d。两个磁盘一样大小,磁盘的每个盘块64字节,模拟磁盘共有128块。第0、1块存放文件分派表,第2块存放根目录,其余存放子目录和文件。

⑶目录结构

目录结构采用树型目录结构。①目录项内容(8个字节):目录名、文件名:3个字节;

扩展名:2个字节(可执行文件扩展名为ex,目录没有扩展名);

目录、文件属性:1字节(1位标识是文件还是目录,1位标识只读还是非只读,1位是隐蔽属性,标识显示还是不显示);

起始盘块号:1个字节;

文件长度:1字节(目录没有长度)。

②根目录

根目录位置固定,为磁盘第2块,大小固定,共8项;③子目录

位置不固定,大小不固定。⑷磁盘分派

磁盘的分派采用链接结构(显式链接)的分派。系统采用文件分派表方式记录磁盘空间的使用状况和链接结构的指针。

由于磁盘有128块,所以文件分派表中一项需要1字节,而磁盘有128块,因而需要128项,所以模拟磁盘空间中的第0、1块被用来存放文件分派表。

⑸磁盘空闲存储空间管理

磁盘空闲存储空间管理采用位示图方法。

位示图和显示链接的指针合在一起组成文件分派表,占用磁盘空间第0、1块。⑹用户接口

用户接口提供用户命令接口,要求实现以下命令:创立文件:create(存在同名文件,询问是否覆盖)拷贝文件:copy(可同名拷贝,也可更名拷贝)删除文件:delete

移动文件:move(注意磁盘内和磁盘间文件移动的不同)显示文件:type编辑文件edit

改变文件属性:change建立目录:makdir

改变目录路径:chadir删除空目录:rdir删除目录:deldir

磁盘格式化命令:format

运行可执行文件:可执行文件的文件名(创立进程)。

上述命令在实际系统中都是需要建立进程才可以实现的,这里由于模拟系统的能力达不到,所以除运行可执行文件需要建立进程外,其他指令执行不必在模拟系统中建立进程,可直接执行。

(7)屏幕显示

如图1,屏幕显示要求包括:

用户命令接口,用于系统运行时用户输入命令;磁盘目录显示,要求显示磁盘的树型目录结构;

磁盘使用状况,显示磁盘每一个磁盘块的空间是占用还是空闲。2.存储管理

存储管理部分主要实现主存空间的分派和回收、存储保护。

(1)模拟系统中,内存部分分为两部分,一部分是系统区,这里只存放进程控制块和主存分派表,一部分是用户区,这里主要是对用户区的管理。

系统区包括PCB区域、主存空间分派表(位示图);

用户区用数组模拟,大小为512字节,存储管理采用页式存储管理方式。(2)主存用户区主存块大小为16字节,页表放在用户区内。(3)屏幕显示

如图1,要求包括:

主存使用状况示意图,哪些主存块已分派,哪些主存块未分派,以不同的颜色表示,正在执行的进程

对应的指令存放的位置以特别颜色显示。

系统时间CPU正在运行进程等待队列进程名,等待时间时间片用户命令接口磁盘目录结构就绪队列进程名执行进程中间结果正在执行的指令进程主存用户区使用状况执行完,显示设备使用状况:是否分派,占用进程,等待进程结果磁盘使用状况图1课程设计屏幕显示内容

3.设备管理

设备管理主要包括设备的分派和回收。

(1)模拟系统中有A、B、C三种独占型设备,A设备3个,B设备2个,C设备1个。(2)由于模拟系统比较小,因此只要设备表设计合理即可。(3)采用先来先服务分派策略,采用设备的安全分派方式。(4)屏幕显示

如图1,要求包括:

每个设备是否被使用,哪个进程在使用该设备,哪些进程在等待使用该设备。4.进程管理

进程管理主要包括进程调度,进程的创立和撤销、进程的阻塞和唤醒,中断作用的实现。

⑴硬件工作的模拟①中央处理器的模拟

用函数CPU()(该函数不能有参数)模拟中央处理器。该函数主要负责解释“可执行文件〞中的命令。x=?;给x赋值一位数x++;x加1x--;x减1

!??;第一个?为A,B,C中某个设备,其次个?为一位数,表示使用设备的时间;end.表示文件终止,同时将结果写入文件out,其中包括文件路径名和x的值。

CPU只能解释指令寄放器IR中的指令。一个进程运行时要根据进程执行的位置,将对应的指令存放到指令寄放器中。

②主要寄放器的模拟

用全局变量模拟重要寄放器,如CPU重要寄放器,程序状态寄放器PSW(处理机的状态、条件标志)、指令寄放器IR(保存当前正在执行的一条指令),程序计数器PC(下一条要执行的指令的地址),数据缓冲寄放器DR(暂存由内存读出或向内存存入的一条指令或一个数据字)等。

③中断的模拟

I.中断的发现应当是硬件的工作,这里在函数CPU中加检测PSW的方式来模拟。

在CPU()函数中,每执行一条指令之前,先检查PSW,判断有无中断,若有进行中断处理,然后再运行解释指令。

CPU函数应当不断循环执行的。

Ⅱ.模拟中断的种类和中断处理方式:

?程序终止(执行指令end形成的中断,软中断):将结果写入文件out,其中包括文件路径名和x

的值,调用进程撤销原语撤销进程,然后进行进程调度;?时间片到(当相对时钟寄放器值减到0时):将正在运行进程的CPU现场保存在进程控制块中,

然后进行进程调度;?I/O中断(设备完成输入输出):将输入输出完成的进程唤醒,将等待该设备的一个进程同时唤醒。④时钟的模拟

系统中的绝对时钟和相对时钟用全局变量模拟。绝对时钟用来记录开机以后的时间,相对时钟用来存放进程可执行的时间片,在进程调度时设置初值,随系统时间的增值1而减值1,减到0时,发出时钟中断。

这里的系统时钟并不是计算机真正的时钟,这里所说的时间只是一个单位,例如使用VB中的时钟控件实现,每触发一次timer事件,绝对时钟增1,表示增加一个时间单位,绝对时钟减1,表示时间片消耗一个。

⑵进程控制块

进程控制块内容包括进程标识符、处理机状态信息(如主要寄放器内容)、进程调度信息(如进程状态、进程优先级、进程调度所需的其他信息、阻塞原因)、进程控制信息(如进程程序和数据的地址)。本模拟系统最多容纳10个进程块。

PCB区域用数组模拟。

进程控制块根据内容的不同组成不同的队列:空白进程控制块链、就绪队列和阻塞队列,正在运行的进程只有一个,系统初始时只有空白进程控制块链。

⑶进程调度

①采用时间片轮转调度算法,时间片为5。②进程调度函数的主要工作是:

将正在运行的进程保存在该进程对应进程控制块中;从就绪队列中选择一个进程;

将这个进程中进程控制块中记录的各寄放器内容恢复到CPU各个寄放器内。③闲逛进程

建立一个闲逛进程,当就绪队列为空时,系统调用该进程运行。当有进程就绪时,就调度就绪进程运行。

闲逛进程什么也不做,只是起到系统能正常运转的作用。例如windows中的idle进程。⑷进程控制

建立四个函数模拟进程创立、撤销、阻塞和唤醒四个原语。①进程创立create

进程创立的主要工作是:

第一步,申请空白进程控制块;

其次步,申请主存空间,申请成功,装入主存;第三步,初始化进程控制块;第四步,将进程链入就绪队列。②进程撤销destory

进程撤销的主要工作是:

第一步,回收进程所占内存资源;其次步,回收进程控制块;

第三步,在屏幕上显示进程执行结果,进程撤销。③进程阻塞block

进程阻塞的主要工作是:

第一步,保存运行进程的CPU现场;其次步,

温馨提示

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

评论

0/150

提交评论