
北京林业大学操作系统课程设计中的多用户文件系统(含C++代码及实验报告)
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本项目为北京林业大学操作系统课程设计作品,实现了一个基于C++的多用户文件系统,并包含详细的实验报告和源代码。
北京林业大学操作系统实习题目:多用户文件系统的设计
实习环境:
Windows操作系统及其相应的开发平台和工具。
内容包括以下三个部分:
1. os.cpp 文件。
2. 课程设计任务书。
3. os 课程设计报告书。
课程设计内容如下:
第一部分,需设计一个二级文件系统。该系统应支持对文件的创建、删除、修改及查询操作,并具备用户登录和注册功能。确保不同用户的文件系统互不干扰。采用两级目录结构:一级为用户账号,二级则在每个账号下存放具体的文件。
为了简化设计流程与复杂性,可以忽略实现如共享机制或安全措施等特性内容。可使用结构体来存储有关用户信息、目录以及文件数据等内容。
具体要求如下:
1. 实现以下命令功能:
- login: 用户登录
- dir: 列出当前工作目录下的所有文件和子目录
- create: 创建新文件或目录
- delete: 删除指定的文件或空目录(注意:不能删除非空目录)
- open: 打开选定的文件进行读写操作,若该文件不存在则创建之
- close: 关闭打开状态下的所有文件句柄
- read: 从已打开的文件中读取指定数量的数据块,并返回至标准输出设备上显示出来。
- write: 向已经开启用于写的模式下工作的目标文件写入数据。
2. 在执行“dir”命令时,系统应当列出包括但不限于以下信息:每个条目的名称、物理地址位置(即实际存储于磁盘上的路径)、属性设置情况以及大小等细节描述字段。
3. 用户创建的任何新文档都应具备读取与修改权限控制机制。
第二部分:
1. 创建一个模拟硬盘驱动器,并在其内部存放文件和目录。利用此模型,根据操作系统理论知识来管理存储于虚拟磁盘上的数据内容。
2. 开发一种命令行接口以访问该假想的“硬件”设备中的信息(类似cmd.exe)。需要实现的功能包括但不限于:浏览当前路径(cd)、显示指定位置下的所有文件和目录(dir)、创建新的子目录(mkdir)、查看文本段落件的内容(more)等。
此外,还应支持从实际计算机硬盘复制数据到虚拟磁盘驱动器中及反向操作。例如:
- import c:\a.txt . 将本地C盘上的 a.txt 文件导入当前工作路径。
- export a.txt c:\ 从当前目录导出文件至指定的 C 盘位置。
课程设计要求如下:
1. 设计一个明确且具体的文件系统格式标准。
2. 根据所定义的标准,开发相应的访问软件程序。该应用程序应当能够根据用户输入的命令去操作虚拟磁盘驱动器中的各种数据对象(包括但不限于读写、复制等)。
说明:上述两个部分可以任选其一进行设计实现;有能力的同学可以选择同时完成两部分内容的设计任务。
全部评论 (0)


