- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
模拟磁盘文件管理系统参考
模拟磁盘文件管理系统
一、任务描述
模拟实现一个文件管理系统
开发语言:C++、C语言、java
开发工具:自选
要求
1、可以实现一下命令(以下命令至少实现5条):
login 用户登录
dir 列文件目录
create 创建文件
delete 删除文件
open 打开文件
close 关闭文件
cd 改变目录
mkdir 创建目录
rddir 删除目录
halt 退出系统
2、列目录要求列出文件名、物理地址、文件大小、读写标识
二、任务完成情况
⑴ 自定义磁盘文件管理的数据结构;
⑵ 能够自由创建、修改、删除文件;
⑶ 文件具有一定自定义的属性;
⑷ 能够显示当前系统文件的状态;
(5)能够完成任务后退出系统。
三、系统流程图与函数调用关系
1、类和主要函数
程序中定义了两个类:
(1)class file //文件类
主要功能是对文件属性的定义,文件在虚拟磁盘地址块的定位。
(2)class fdatabase //文件操作类
主要功能是对创建、删除、修改等方法的具体实现。
程序中的主要函数及说明:
char *getname( ) //获取文件名
int gettag( ) //获取删除标记
int getlength() //获取文件大小
int getblocknum() // 磁盘块数
int getblocksum1() //磁盘块号的始点
int getblocksum2() //磁盘块号的终点
void setname(char na[ ] )//设置文件名
void delwenjian()
{ tag=1; } //设置删除标记 1:已删 0:未删
void creatfile(char *na,int L,int num,int s1,int s2) //创建文件
void deltefile(char *na) {tag=1; strcpy(name,na);} //删除文件
void disp( ) //输出文件信息
int search(char *fname) //按文件名查找
int creatfile(char *na,int L,int num,int s1,int s2) //创建文件时先查找是否存在
int deltefile(char *na) //删除文件时先查找是否存在
2、函数流程图
(1)整体流程图
(2)创建文件流程图
3、删除文件流程图
4、输出文件流程图
四、系统使用说明与界面设计
(1)、课程设计的模板说明
1、初始化,建立文件系统
输入磁盘大小(G),每个盘块大小(M),自动建立位示图,位示图字长定为32位
输出位示图的行数,以及行号、列号与磁盘块号的转换公式(都从0开始编号)。
2、 循环选择执行以下功能
1、存储文件
输入建立的文件名和文件大小,如果该文件名已经存在,则输出不能建立的信息否则计算所需的磁盘块数
为其分配足够多的磁盘块,并记录下来
输出所占用的磁盘块号
2、删除文件
输入要删除的文件名,如果该文件名不存在,则输出删除错误信息,否则收回该文件所占用的磁盘块
删除该文件名
3、显示位示图情况
显示位示图的情况
显示剩余磁盘块的数目
4、显示文件列表
显示文件名,文件大小,占用的磁盘块数目和磁盘块号
这样,初始化,建立文件系统完成。运行结果:
(3)程序再输出位示图的剩余盘块数,行数,以及行号、列号与磁盘块号的转换公式
(行列皆从0开始编号);
2、选择执行:存储文件,删除文件,显示位示图情况,显示文件列表
显示文件系统管理列表,并提示输入信息1——4。用户输入文件操作命令1(存储文件),2 (删除文件)、3(显示位示图情况)、4(显示文件列表);
格式如下:键入1,创建文件名为fname,大小为L(MB)的文件;
键入2,删除文件名为fname的文件;
键入3,显示位示图情况;
键入4,显示所有文件信息。
运行结果:
(2)、存储文件
建立文件名为jike大小为200(MB)的文件:
再建立文件名为wo大小为20(MB)的文件后显示文件列表:
显示位示图情况:
(3)、删除文件
输入要删除的文件名,如果该文件名不存在,则输出删除错误信息,否则收回该文件所
文档评论(0)