1、 课课 程程 设设 计计 课程名称_操作系统操作系统 _ 题目名称_多用户多级目录多用户多级目录文件系统的实现文件系统的实现 _ 学生学院_计算机学院计算机学院_ 专业班级 学 号 3 学生姓名 指导教师 2008 年 1 月 文件管理系统文件管理系统 一设计目的: 编写并调试一个树型目录结构的文件系统,模拟文件管理工作流程。 二设计要求: 设计多用户文件系统,采用多级文件目录。 至少要有十个以上的实用命令,应设置文件保护措施。 设计一个较实用的用户界面,方便用户使用,界面要为用户提供足够的选择信息, 不需用户打入冗长的命令。 三设计内容 本程序设计了一个树形目录结构的文件管理系统,初始化系统
2、默认根目录为 root,根目 录下为 11 个用户的注册目录,包括一个超级用户 su 和十个普通用户 stud01stud10,初始 化的树形分支结构如下: root su stud01 stud02 stud03 stud04 stud05 stud06 stud07 stud08 stud09stud10 初始化后各个用户注册目录下均为空,用户可进行创建编辑文件,显示文件内容,删除 文件,复制文件,粘贴文件,创建目录,删除目录,更改工作目录,显示当前工作目录的全 路径,显示当前目录下的全部内容,寻求帮助及用户切换等操作,当只有目录可以为分支节 点创建其目录下的子目录或者文件(这里指的文件为
3、除目录外的终端文件) ,也可以为叶子 节点以待必要的时候在其目录下创建子目录或者文件使其成为分支节点, 而文件只能是叶子 节点。 程序运行时要求输入用户名及其密码, 初始化时 su 和 stud01stud10 相应的密码分别为 su,01stud,02stud,03stud,04stud,05stud,06stud,07stud,08stud,09stud,10stud,系 统将验证输入的用户名及其密码,并提示是否输入正确,错误要求重新输入。用户密码只有 超级用户 su 才能更改,普通用户没有权限进行此操作。登录后系统在每个命令提示符前加 【用户名】 ,表示当前的登录用户,若登录用户为 su
4、 时,命令提示符为#符号,若为普通用 户,命令提示符为$符号,而且工作目录也指向当前登录用户的注册目录下。而只有登录用 户为 su 时才可以访问根目录及其所有用户的注册目录下的所有目录以及文件,登录用户为 普通用户时只能访问根目录以及当前用户注册目录下的所有子目录和文件,如当前用户为 stud01,就无权访问 su 以及 stud02stud10 目录下及其目录下的所有子目录和文件。 进入系统后,根据系统各命令的功能进行相应的操作,系统所有的命令参数及其功能如 下: su,stud01,stud02,stud03,stud04,stud05,stud06,stud07,stud08,stud0
5、9,stud10: 输入用户名进行用户切换,输入用户名后系统会要求输入用户密码,只有输入正确,用户切 换才能成功; pwd:显示当前工作目录的全路径名; ls:列出当前目录下的内容,包括所有子目录以及文件,列出时在目录名后面标记“/” , 在终端文件后面标记“*”; mkdir:在当前目录下建立子目录,输入此命令后,系统提示“directory name:” ,要求 输入要建立的子目录名, 倘若当前目录下已经存在同名子目录, 系统会提示 “directory already exist” ; rmdir: 删除当前目录下已经存在的子目录, 输入此命令后, 系统提示 “directory nam
6、e:” , 即输入要删除的子目录名, 倘若你要删除的子目录在当前目录下不存在, 系统提示 “directory not exist” ; vi:在当前目录下建立编辑文件,输入此命令后,系统提示“file name:” ,要求输入要 编辑的文件名,倘若当前目录下已经存在该文件,系统会显示该文件内容,进入编辑界面, 若当前目录下没有该文件创建进入编辑界面; vi 编辑状态下,提示符为“:” ,编辑命令及其功能为:i进行文本行的输入,系统 提示输入要输入文本的行,若该行已存在则清空重新等待输入;d删除指定的行,系统 提示“linenum:” ,输入行数进行删除;list显示当前编辑文本的内容;wq对文本修 改进行存储并退出,系统同时提示“Now saving the file!Press any key and exit” ; cat:显示当前目录下文件的内容,输入此命令后,系统提示“file name:” ,倘若你要查 看的文件不在当前目录下,系统提示“file no