操作系统大型实验报告 - read.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统大型实验报告 - read

操作系统大型实验报告 --基于Linux系统的文件系统 黄挺,软件工程063,200626630304 一、实验报告的说明: 1、该实验报告采用了很多超链接,链接到文档的相应位置。 2、文件系统的文档:html格式的文档,主页是index.html。里面包含了对各个文件,数据结构,数据结构的成员变量,函数的详细说明以及所有自定义的头文件的源代码。 3、文件系统的源代码:其中包括:main.cpp,yafs.h,yafs_mem.h,yafs_op.h,disk.img源代码文件的字符编码方式为UTF-8。 二、文件系统的简要说明: 此文件系统的名称为Yet Another File System,磁盘上的数据结构参照了ext2的数据结构,并做了一些简化,此文件系统所操作的磁盘是一个名为disk.img大文件,所以所有对磁盘的操作其实就是对这个文件的读写。文件系统的内存目录结构采用的是树状结构。 此文件系统的开发环境以及用到的工具:eclipse+CDT集成开发环境,doxygen自动文档生成器,ksnapshot截图工具。 三、文件系统的设计说明: 磁盘上的设计: 此文件系统将disk.img(大小为1M)划分为1024个大小为1K的块,其中第零块用来存放超级块,保存整块磁盘的信息;第一块用来存放块组描述符,保存块组的信息;第二块用来保存块“位图”(这里所谓的“位”其实并不是1bit,而是1byte,下同),保存块的使用情况;第三块用来保存结点“位图”,保存结点的使用情况;第四到第十七块用来存放索引结点;第十八块以后用于存放文件数据。 磁盘上文件的存储: 将文件信息和文件数据分开存储,文件信息包含了文件的基本信息以及文件数据的块指针。其中文件夹为特殊的文件,文件夹的数据块存放的是其目录下的目录项的信息。 内存中的设计: 内存中的目录结构采用树状结构,树的结点存放一个文件或者文件的所有信息。 四、各类数据结构的定义以及功能说明: 磁盘上的数据结构: super_block,group_desc,inode,dir_entry 内存中的数据结构: inode_mem,dir_entry_mem 结构的详细说明请点击链接 五、文件系统支持的操作: 操作名称 命令格式 功能说明 exit exit 退出文件系统 format format 格式化磁盘,使之回到初始状态 ls ls 列出当前目录下的子文件或者子文件夹 cd cd 文件名 改变当前路径:路径名为“.”表示当前路径本身,“..”表示父路径 mkdir mkdir 文件夹名 在当前路径下新建一个文件夹 newfile newfile 文件名 在当前路径下新建一个文件夹 rm rm 文件名 删除当前路径下的一个文件或者文件夹 rename rename 原文件名 新文件名 重命名当前路径下的一个文件或者文件夹 六、各类操作的简易流程图 主程序的流程控制: format操作的流程控制: ls操作的流程控制: cd操作的流程控制: mkdir操作流程控制: newfile操作流程控制: rm操作流程控制: rename操作流程控制: 七、程序运行的截图以及说明: 刚打开程序 格式化磁盘: 列出根目录下的目录项 在根目录下新建一个名“huangting“的文件夹和名为“vivian”的文件 将根目录下名为“huangting” 的文件夹删除 重命名名为“vivian”的文件为“vivianht” 在根目录下新建一个名为“huangting”的文件夹并将路径转到该目录下 回到根目录 重新打开程序以查看刚才的新建的文件和文件夹是否存在 八、实验总结: 此次实验中遇到的问题: 这是我第一次写代码行数过千的程序,刚开始整体的逻辑控制上存在很大问题,调试的时间起码是写代码时间的4-5倍,效率相当低。另外在指针的使用上深感力不从心,主要是对c的指针理解不够深入,导致经常有指针在函数返回后被非正常丢失或者倍非正常修改。 此次实验的设计的缺点: 1、磁盘上的结点位图和块位图空间极度浪费,原来一个字节可以表示的内容却花了一个位来表示。 2、内存中保存了全部的目录,内存开销太

文档评论(0)

wujianz + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档