1、 计算机系课程设计计算机系课程设计 实实 验验 报报 告告 课程名称课程名称 操作系统课程设计操作系统课程设计 实验学期实验学期 2012 2012 至至 2013 2013 学年学年 第第 1 1 学期学期 学生所在系部学生所在系部 计算机与信息管理系计算机与信息管理系 年级年级 2010 2010 专业班级专业班级 计算机计算机 001001 班班 学生姓名学生姓名 学号学号 任课教师任课教师 实验成绩实验成绩 计算机系制计算机系制 一个简单的文件系统的详细设计一个简单的文件系统的详细设计 一、实验目的一、实验目的 (1)阅读并调试一个简单的文件系统,模拟文件管理的工作过程。从而对各种文件
2、操 作命令的实质内容和执行过程有比较深入的了解。 (2)了解设计一个 n 个用户的文件系统,每个用户可以保存 M 个文件。用户在一次运 行中只能打开一个文件,对文件必须设置保护措施,且至少有 create、delete、open、close、 read、write 等命令。 二、二、实验要求实验要求 1、阅读所给文件系统源程序,并加注释(注释量达 60%) , 2、修改、完善该系统,画出所设计的文件系统的详细流程图。 三、文件系统功能设计三、文件系统功能设计 1. 功能设计功能设计 该文件系统是一个多用户、多任务的文件系统。对用户和用户的文件数目并没有上限。 也就是说该系统允许任何用户申请空间
3、,而且在其目录下的文件数目并不做任何的限制。 该系统可以支持的操作命令如下: bye用户注销命令。当使用该命令时,用户退出系统,注销该用户功能设计并回 到登陆界面。 命令格式: bye close删除用户注册信息命令。执行该命令后,用户在系统中的所有信息,包括 该用户目录下的所有文件都被删除。命令执行完成后返回登陆界面。 命令格式:close create在当前目录下创建一个文件,且该文件不能跟当前已有的文件重名。该文 件的管理信息登记在用户文件信息管理模块中。执行完该命令后回到执行命令行。 命令格式:createfile1 其中:“”符为提示符,file1 为要创建的文件名。 delete删
4、除当前用户目录下的一个文件,命令执行完毕返回至命令行。 命令格式:deletefile1 其中:file1 为要删除的文件名。 list显示当前注册目录下的所有文件信息,包括文件名、文件长度、文件操作权 限。 命令格式:list chmod改变某个文件的执行权限,但前提是该文件是该用户目录下的文件。 命令格式:chmodfile1。 其中:file1 为要授权的文件名。 open在 window 界面下打开某个文件。 执行该命令后, 文件 file1 将用在 windows 界面下的文件形式打开。用户可以在这个方式中对文件进行修改,并将修改后的内容保存。 命令格式:openfile1 其中:f
5、ile1 为要打开的文件名。 read读文件信息。将文件信息读入并显示在终端上。 命令格式:readfile1 其中:file1 为要读的文件名。 write向某个文件写入新的信息。用户可以选择用覆盖原来内容的方式或和在文 件的末尾追加新信息的方式写入信息。 当要退出时输入“#”即可。 (2)系统采用二级文件目录。设置主目录(MFD)和用户文件目录(UFD),分别以文 件的方式保存在磁盘中。 在主目录中有注册用户的用户名和另一标志该用户目录下是否有文 件的指针标记。用户文件目录采用用户名作为文件名保存于磁盘,以便检索时方便对应。在 用户文件目录中保存着该目录下所有文件的文件名称、保护码、文件长
6、度。 (3)该系统大量使用高级语言中的文件操作函数,所以能实际看到文件的创建、写入、 读出、删除等效果。 2. 功能设计实现总体流程功能设计实现总体流程 选择操作 用户登录用户注册退出 在MFD中找 到该用户? 初始化命令关键字 输入操作命令 删 除 文 件 读 文 件 写 文 件 创 建 文 件 删 除 文 件 打 开 文 件 改 变 权 限 保 存 当 前 主 目 录 显 示 文 件 继续操作执行? 开始 结束 结束 Y N N Y 3. 主要数据结构主要数据结构 4. 主要功能模块主要功能模块 四、文件系统功能模块详细设计流程图四、文件系统功能模块详细设计流程图 1. int LoginD