操作系统文件管理实验报告

  • 格式:docx
  • 大小:33.41 KB
  • 文档页数:18

下载文档原格式

  / 9
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

竭诚为您提供优质文档/双击可除操作系统文件管理实验报告

篇一:操作系统实验报告文件管理

昆明理工大学信息工程与自动化学院学生实验报告

(201—201学年第二学期)

课程名称:操作系统开课实验室:年月日

一、实验目的

用c或c++语言编写和调试一个简单的文件系统,模拟文件管理的基本功能。从而对各种文件操作命令的实质内容和执行过程有比较深入的了解。

二、实验原理及基本技术路线图(方框原理图)

用c模拟实现文件系统的管理;要求设计一个多级目录结构的文件系统,能正确描述文件控制块,采用合理的外存分配方式,能实现基本的目录及文件的操作,包括创建、删除、重命名、复制、移动等功能,并对文件有一定的存取权限控制。

功能设计:

helpdirexitcreate[文件名]cdir[目录名]read[文件名]close[文件名]edit[文件名]cd[目录名]attr[文件

名]del[文件名]rename[文件名]显示命令帮助显示当前目录下的文件和文件夹退出系统创建文本文件创建文件夹读取一个文件最多可同时读取五个关闭一个文件编辑一个文件进子目录或者上级目录显示该文件的属性删除文件重命名

编辑功能流程图

删除文件流程图创建文件流程图

核心算法:

boolFormat(void);//格式化boolinstall(void);//装载虚拟硬盘的数据voidlogin(void);/用户登陆

voidshowmenu(void);//显示功能菜单

boolonAction(void);//用户选择功能并执行voidcreateFile(stringstr);//创建文件

boolread(stringstr);//读取文件

voideditFile(stringstr);//编辑文件

voidDelete(stringstr);//删除一个文件

数据结构:

始地址

/*inode结构体

*/structinode{unsignedshortdi_tag;/*inode标识*/ /*关联文件数,当为0时表示删除文件,如一个目录至少

包含两个文件:"."和

".."*/constunsignedintAccounT_num=10;//用户数量

/*---------常变量

------*/constunsignedintbLocK_sIZe=512;//块长constunsignedintDATA_bLocK_num=512;//数据块数量constunsignedintDInoDe_sTART=4*bLocK_sIZe;//inode起始位置

constunsignedintDInoDe_sIZe=512;constunsignedintDIn oDe_num=32;//inode大小//inode数量constunsignedintDATAsTART=(2+DInoDe_num)*bLocK_sIZe ;//数据区的开unsignedshortdi_number;

unsignedshortdi_mode;/*存取模式:0为目录,1为文件*/

unsignedshortdi_userID;/*当前inode所属用户0为根目录ID,一次下去是管理员目

录、用户目录*/unsignedshortdi_access;/*访问权限0为不允许普通用户访问(公共目录),1为允许普通用户访问*/

};

unsignedshortdi_size;/*文件大小,目录没有大小,值为0*/unsignedshortdi_ctime;/*创建时间

*/unsignedshortdi_mtime;/*最后一次修改时间

*/unsignedshortdi_block[DATA_bLocK_num];/*数据块块地址编号*/

/**超级块***/

structsuper_block{

};

/**账户信息**/

structuser{

};

/**文件/目录结构**/

structdirectory{

unsignedshorts_inodes_count;/*文件系统中inode的总数*/unsignedshorts_blocks_count;/*数据块总数

*/unsignedshorts_r_blocks_count;/*保留块总数

*/unsignedshorts_free_blocks_count;//空闲块总数unsignedshorts_free_inodes_count;/*空闲的inode总数*/unsignedshorts_log_block_size;/*block的大小

*/unsignedshortuser_id;//用户

IDunsignedshortuser_access;//权限

stringusername;stringpassword;//用户名//密码

篇二:操作系统课程设计-文件管理实验报告

操作系统课程实验报告

20XX~20XX年度第1学期

院系:学号:姓名:

任课教师:成绩评定:

实验一题目:文件管理

完成日期:年月日

1、实验目的

了解文件管理的功能和任务,理解文件系统组成和特点,熟悉文件系统的访问和操作。实验要求用高级语言编写和调试一个简单的模拟文件管理程序。加深理解有关盘块的分配与回收、目录管理等的具体实施策略。

2.、实验内容

模拟一个资源管理器进行文件操作,包括建立和删除目录、建立和删除文件等基本文件操作。建立相应的数据结构(如:位示图等),模拟盘块管理。可以参照图6界面进行

设计。

3、算法设计

1)、定义主面板mainFrame,布局好各个控件,并初始

/*

*往node节点下添加一个子节点