计算机操作系统(课程设计)报告
操作系统课程设计
课程设计目的
本设计的目的是实现操作系统和相关系统软件的设计,其中涉及进程编程、I/O操作、存储管理、文件系统等操作系统概念。
课程设计要求
(1)对进行认真分析,列出实验具体步骤,写出符合题目要求的程序清单,准备出调试程序使用的数据。
(2)以完整的作业包的形式提交原始代码、设计文档和可运行程序。提交的光盘应当包括:设计题目,程序清单,运行结果分析,所选取的算法及其优缺点,以及通过上机取得了哪些经验。程序清单要求格式规范,注意加注释(包含关键字、方法、变量等),在每个模块前加注释,注释不得少于20%。课程设计要求同时上交打印文档,设计报告包括设计题目,算法分析,关键代码及其数据结构说明,运行结果分析以及上机实践的经验总结。
设计一:
设计任务:模拟Linux文件系统
在任一OS下,建立一个大文件,把它假象成一张盘,在其中实现一个简单的模拟Linux文件系统。
在现有机器硬盘上开辟100M的硬盘空间,作为设定的硬盘空间。
编写一管理程序simdisk对此空间进行管理,以模拟Linux文件系统,要求:
盘块大小1k
空闲盘块的管理:Linux位图法
结构:超级块, i结点区, 根目录区
该simdisk管理程序的功能要求如下:
info: 显示整个系统信息(参考Linux文件系统的系统信息),文件可以根据用户进行读写保护。目录名和文件名支持全路径名和相对路径名,路径名各分量间用“/”隔开。
cd …: 改变目录:改变当前工作目录,目录不存在时给出出错信息。
dir …: 显示目录:显示指定目录下或当前目录下的信息,包括文件名、物理地址、保护码、文件长度、子目录等(带/s参数的dir命令,显示所有子目录)。
md …: 创建目录:在指定路径或当前路径下创建指定目录。重名时给出错信息。
rd …: 删除目录:删除指定目录下所有文件和子目录。要