本系统是属于多用户文件系统,系统较为简单。但文件的主要功能比较齐全。
该系统在系统盘内自动创建一个目录root作为该系统的根目录,里面还有一个配置目录。每个用户在root下自动创建属于自己的目录,并在自己目录内自动生成一个root目录作为该用户的操作权限目录,思想来源于linux的多用户不共享同一root目录。每个用户只能在自己的root下有任何操作,不能在其他目录下使用部分系统命令。 该系统使用VC作为开发工具。所有系统命令都是自己编程实现。 2. 文件系统结构说明:
由于采用C\\C++语言编程,因此采用的文件系统结构和windows文件系统结构一致。只是操作上受到用户的限制。 3. 数据结构说明:
本程序参照可视化软件处理消息的方法。该系统中心函数是wait_command(),处理用户输入的各种命令。当执行logout时,退出。 4. 各模块算法、流程说明:
进入系统 Main()
入初始化init_once() 输 为 logout输入不是exit的命令 命令 接收消息并处理消息 wait_command() 当没有用户使用时,输入命令为exit Exit
5. 程序清单:
head.h : 程序所使用的大部分数据结构都在里面定义。
Main.cpp:程序主要文件,所有函数都在里面声明和定义。
\\debug\\main.exe: 执行文件,可以单独执行。也是程序最终发布文件。 6. 使用说明书:
1) 当打开Main.exe时,首先系统只接收三个命令,register(注册用户)、login(登录
用户)、help(帮助,帮助有两种,一种是所有命令的显示,只需要输入help;另一种是具体命令的帮助,除了输入help外,还要再输入其他一个命令。如help login 表示浏览login的帮助).
2) 一般用户都要先进行注册。本系统注册用户上限为10人。
3) 登录系统login [用户名] [密码] 进入相应用户的根目录。这时用户具有使用所有命
令的权限。想查看有多少命令,可以使用help。
4) 当用户退出到自己根目录以外目录时,他的权限就收到限制,除了浏览外,其他都
不能做。
5) 当用户输入logout时,这时便注销用户。
6) 当没有用户登陆系统时,输入exit才能顺利退出系统。 7. 总结和体会
本系统基本上实现文件系统的部分命令。如cd、dir、create、write、read、mkdir等。 而且也增加用户管理和权限限制。但仍存在很大不足,首先没有按照面向对象思想设计程序结构,仍以函数为主,而不是对象为主;其次,使用太多全局变量,浪费太多有用空间;再次,没有对系统用户的密码进行保护;最后,系统函数多,清晰度不够。
因篇幅问题不能全部显示,请点此查看更多更全内容