教育资料操作系统大型试验实验报告姓名: XX 班级:软件工程 110x 学号: 201126630xxx
教育资料一、名称操作系统大型试验
二、目的用 C++编写出一个简单的模拟文件系统,实现目录的添加、 删除、 重命名, 文件的添加、删除、重命名、文件和目录、文件的拷贝
三、要求开发工具: word,vc win32api 1
设计和实现一个简单的文件系统,要求包括目录、普通文件和文件的存储2
文件系统的目录结构采用类似Linux 的树状结构;3
要求模拟的操作包括:a) 目录的添加、删除、重命名;b) 目录的显示(列表)c) 文件的添加、删除、重命名d) 文件和目录的拷贝4
用户进入时显示可用命令列表;用户输入 help 时显示所有命令的帮助文档;输入某个命令 +
时显示该条命令的使用说明5
用户输入 exit时退出该系统6
实验实现基于windows 平台;7
实验开发语言可以选用C/c++ 等四、设计1
主要思路说明本模拟系统通过一个大小固定的数组要代表物理盘块,假设共有1024 块,新增目录占一块, 新增文件占一块,文件中可输入内容,内容假设定义为5 个字符占一块,超出则应新申请空间
模拟物理盘块的数组中,数组内容为-99 代表改物理盘块内容为空,可使用,其他数字均代表该物理盘块被占用,其中-3代表是占用文件的末结点,其他整数代表是文件内容的下一个寻址下标,另有一个string类型的数组来存储内容,模拟文件写入了对应下标的物理盘块中
设置了一个全局指针指向根结点,一个全局指针指向当前操作目录
搜索空白物理盘块时采用顺序搜索物理盘块数组
存储形式主要采用类似二叉树结构,如目录为根,目录下的第一个文件或目录存在根的子节点,目录下的其他文件或目录存在第一个文件或目录的兄弟节点,以此类推
本程序仅seperate()函数使用现成代码,此函数功能为