操作系统课程设计
1.课程设计题目
实现一个模拟操作系统。
2.课程设计目的
通过模拟操作系统的实现,加深对操作系统工作原理理解,进一步了解操作系统的实现方法,并可
练习合作完成系统的团队精神和提高程序设计能力。
3.小组人数
建议 3~4 人一组共同完成模拟系统的实现。
4.编程语言
建议使用 C, VB、VC、CB, JAVA 等 windows 环境下的程序设计语言,以借助这些语言环境来模拟
硬件的一些并行工作。
5.课程设计内容
模拟采用多道程序设计方法的单用户操作系统,该操作系统包括进程管理、存储管理、设备管理、
文件管理(磁盘)和用户接口四部分。
6.课程设计具体内容和要求
一、文件管理和用户接口
文件管理和用户接口部分实现的主要是单用户的磁盘文件管理部分,包括文件的逻辑结构、物理结
构、目录、磁盘分配回收、用户接口的实现。
⑴文件的逻辑结构
文件的逻辑结构采用流式结构;
文件均采用文本文件,是存放任意字符的文件。
⑵磁盘模拟
用一个文件 disk.txt 模拟磁盘,磁盘的每个盘块 64 字节,模拟磁盘共有 128 块。第 0、1 块存放文
件分配表,第 2 块存放根目录,其余存放子目录和文件。
⑶目录结构
目录结构采用树型目录结构。
①目录项内容(8 个字节):
目录名、文件名:3 个字节;
扩展名:1 个字节(;
目录、文件属性:1 字节;目录没有扩展名)
起始盘块号:1 个字节;
文件长度:2 字节(块数,目录没有长度)。
②根目录
根目录位置固定,为磁盘第 2 块,大小固定,共 8 项,占用模拟磁盘第 2 块;
③子目录
位置不固定,大小不固定。
⑷磁盘分配
磁盘的分配采用链接结构(显式链接)的分配方式。系统采用文件分配表方式记录磁盘空间的使用
情况和链接结构的指针。
因为磁盘有占用磁盘由 128 块,所以文件分配表中一项需要 1 字节,而磁盘由 128 块,因而需要 128
项,所以模拟磁盘空间中的第 0、1 块被用来存放文件分配表。
⑸用户接口
用户接口提供用户命令接口,要求实现以下命令:
创建文件:create
拷贝文件:copy
删除文件:delete
移动文件:move
显示文件:type
编辑文件:edit
改变文件属性:change
磁盘格式化命令 format
建立目录:makdir