




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
简单的二级文件管理系统仿真设计目的:通过特定文件存储空间的管理、文件的物理结构、目录结构和文件操作的实施,加深对文件系统内部功能和实施过程的理解。设计内容:模拟简单的次要档案管理系统一、实验内容说明1实验目标本实验的目的是通过简单的多用户文件系统设计,加深对文件系统内部功能和内部实现的理解。2实验要求为DOS系统设计简单的辅助文件系统。需要:可以实施以下命令:Login用户登录Dir列文件目录建立Create档案删除删除文件打开Open文件关闭关闭文件读取文件写入Write文件列出目录时,列出文件名、物理地址、保护代码和文件长度。源文件可以进行读写保护。二、程序的主要内容1设计理念程序必须能够对每个用户拥有的文件执行操作,用户不能对其他用户的文件执行操作。文件操作包括浏览、创建、删除、打开、关闭、读取、写入和修改模式。其他任务包括“新建用户”、“帮助”、“用户登录”、“注销用户”和“关机”。程序文件夹下有一个名为“文件”的系统根目录,用于记录所有注册的帐户和密码。使用用户名作为文件名的自定义文件、其内容拥有的文件名和属性;名为“keiji”的文件夹。“keiji”文件夹包含记录所有使用的物理地址的“file.p”指针文件。一些名为物理地址的文件的内容是文件的内容。2数据结构文件结构系统文件数据结构:Fpaddrint、文件的物理地址、flengthint、文件长度、fmodeint、文件模式0。只读;只读。1.可写;可写。可读和写;3.保护,fnamechar,文件名;Filemode结构文件状态数据结构:Isopenint,文件的当前状态,0。关闭;关闭。1.打开、模式int、文件模式0。只读;只读。1.可写;可写。可读和写;3.初始化用户结构用户信息数据结构:Unamechar,用户名,upasswordchar,用户密码;Userfile结构用户文件数据结构:Unamechar、用户名、ufilefile和用户拥有的文件数组。代码:#include#include#include#include#include#define MaxUser 100 /最大MDF主目录文件定义#define MaxDisk 512*1024 /模拟最大磁盘空间#define commandAmount 12 /文件操作的命令数/存储空间管理相关结构和变量char diskmax disk;/512K磁盘存储空间模拟Typedef struct distTable /磁盘块结构Int maxlengthInt startInt useFlagDistTable * next磁盘节点;磁盘节点*磁盘头;Struct fileTable /文件块结构char fileName10;Int strat/磁盘存储空间中文件的起始地址Int length/文件内容长度Int maxlength/文件的最大长度char file kind3;/文件中的属性读写方法Struct TM * timeinfoBool openFlag/检查文件是否打开了进程/file table * next;/双层目录结构typedef structuser _ file _ directory/使用者档案目录档案UFD/char fileName10;FileTable * fileUser _ file _ directory * next UFD/UFD * head file;typedef struct master _ file _ directory/主文件目录MFDchar userName10;char password10;UFD * user MFDMFD user tablemax user;int used=0;/MFD目录中已存在的用户数/文件管理Void filecreate (char filename ,int length,char file kind);/创建文件void fileWrite(char fileName);/写入文件void file cat(char fileName);/读取文件Void fileren (char filename ,char rename);/重命名文件void fileFine(char fileName);/查询文件void fileDir(char UserName);/显示用户的所有文件void file close(char fileName);/关闭打开的文件void fileDel(char fileName);/删除文件Void chmod (char filename ,char kind);/修改文件读写方法Int request dist (int start postion,int max length);/磁盘分配查询void init disk();/初始化磁盘void freeDisk(int start postion);/释放磁盘空间void diskShow();/显示磁盘使用情况/用户管理void user create();int log in();int userID=-1;/用户登录的ID号。值为-1表示没有用户登录Int main()char ordercommand amount10;Strcpy(order0, create );Strcpy(订单1,RM );Strcpy(order2, cat );Strcpy(订单3,“写入”);Strcpy(order4, fine );Strcpy(订单5, chmod );Strcpy (order 6,ren );Strcpy (order 7,dir );Strcpy(order8, close );Strcpy(order9, return );Strcpy(order10, exit );Strcpy(订单11, df );Charcommand 50、command _ str1 10、command _ str2 10、command _ str3 5、commandInt i、k、j;Int lengthinit disk();/初始化磁盘for(I=0);Inext=NULLWhile(1)printf( * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * n );Printf( 1,Creat user n );Printf( 2,log in n );printf( * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * n );printf( please choo ce the function key : );Int choicescanf(“% d”,choice);if(choice=1)user create();else if(choice=2)userID=log in();Else printf(输入错误。请重新选择。 n );While(userID!=-1)fflush(stdin);printf( 3333433333343333433343334333333343333343333433333333333333343333333333433343333433333433333333433333343333343333433333334333334354-)Printf( create-创建格式:创建a1 1000 rw,名称为a1,长度为1000字节的可写文件。 n );Printf( rm-删除格式:删除名为RM a1、a1的文件 n );Printf( cat-查看文件内容格式:显示cat a1、a1的内容 n );Printf( write-写入格式:write a1 n );printf( fine-query format:fine a1,显示文件a1的属性。 n );Printf( chmod-修改格式:chmod a1 r,将文件a1的权限更改为只读 n );Printf( ren-重命名格式:ren a1 B1,a1为B1 n );Printf( dir-显示文件类型:dir AAA,显示AAA用户的所有文件 n );printf(“df-显示磁盘空间使用情况格式:df n”);Printf( close-关闭文件类型:close a1,文件a1 n );printf( return-结束使用者并返回登入介面。 n );Printf( exit-退出程序 n );printf(“333343333433333343333433334333343333343333334333333334333333333333333334333433333433333334333343333334333333433333343333333433333333433333
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年文化和旅游部直属事业单位招聘应届生(100人)考前自测高频考点模拟试题及答案详解(新)
- 2025甘肃金昌市金川区教育系统引进高层次和急需紧缺人才招聘12人(第二批)考前自测高频考点模拟试题及答案详解一套
- 2025安徽宣城市中心医院第一批次招聘22人考前自测高频考点模拟试题及一套参考答案详解
- 2025年中国机织革基布和针织革基布行业市场分析及投资价值评估前景预测报告
- 2025年中国磺苄西林钠原料药行业市场分析及投资价值评估前景预测报告
- 2025湖南永州市教育局直属学校(单位)招聘教师46人考前自测高频考点模拟试题附答案详解(模拟题)
- 2025年度延吉市中小学教师专项招聘116人模拟试卷完整参考答案详解
- 2025辽宁省检验检测认证中心赴高校现场招聘20人考前自测高频考点模拟试题及答案详解(名师系列)
- 2025年中国环保涂料行业市场分析及投资价值评估前景预测报告
- 2025甘肃近代物理研究所部分研究室负责人竞聘考前自测高频考点模拟试题参考答案详解
- Python经济大数据分析 课件 第8章 Python应用商品零售购物篮分析
- 护理品管圈提高患者健康教育的知晓率
- 消毒供应中心工作人员 职业安全和防护
- 2023-2024 学年度第一学期第一次月考七年级数学试题
- AM2U2Friends单元整体(教学设计)牛津上海版(试用本)英语五年级上册
- 水管阀门维修施工方案模板
- 2022年我国手机预装软件市场现状分析
- 六年级上册科学全册实验操作评分表(新改版教科版)
- 社会学导论(第五版)孙立平课件
- 2023年高考英语总复习高中英语常用一百组固定搭配
- GB/T 23711.3-2009氟塑料衬里压力容器耐高温试验方法
评论
0/150
提交评论