操作系统实验五:文件系统
代码地址点这里
1.函数功能说明
1.1模块说明
format模块
功能:
格式化文件系统,即初始化文件系统,相当于硬盘的格式化。将其中原有的用户及用户下的文件系统全部还原初始状态,即没有任何用户和目录、文件,也就是按设计的文件系统格式重建新的文件系统。
get_blknum和release_blk模块
功能:
实现i节点的分配和回收;
算法:当一个新的文件被建立时,在给该文件分配磁盘存储区之前,应为该文件分配存放该文件的说明信息的磁盘i节点。反之,当从文件系统中删除某个文件时,则要首先删除它的i节点项。
init()模块
功能:
进入文件系统
算法:初始化用户打开文件系表。在内存中申请一个虚拟存储空间,此空间必须大于或等于可格式化时的空间。将文件系统文件读入虚拟磁盘。
quit()模块
功能:退出文件系统函数quit()
算法:将虚拟磁盘内容保存到磁盘上。释放虚拟磁盘所占据的空间。撤消用用户打开文件表。
Creat()模块
功能:
创建文件
用法:creat filename
算法:分配一空目录项,分配磁盘块。可用位示图。填写该空目录项。如文件长度(0),文件名,类型等。分配一个用户打开文件表项,并填写相关目录,读写指针=0。
open()模块
功能:
打开文件open()
用法:open filename
算法:if(该文件已打开or该文件不存在)报错(出错信息)。分配一个用户打开文件表项。
close()模块
功能:
关闭文件close()
用法:close filename
算法:释放该文件的用户占据的