操作系统--文件目录系统的实现

本文详细探讨了操作系统中的文件系统实现,包括文件目录、UFS文件系统、分配方法如连续分配、链接分配和索引分配的优缺点,以及空闲空间管理的位图和链表方式。特别提到了UFS的inode结构和空闲空间管理策略,最后阐述了虚拟文件系统VFS的作用和意义。

文件系统的实现

文件系统要实现什么?
1.文件目录
2.空间分配方法
3.空闲空间管理
在这里插入图片描述

文件目录

文件控制块
在这里插入图片描述

UFS文件系统

INODES
这个inode和之前的FCB相比,少了一个文件名,是因为文件名被单独拿出来了。一个UFS实体包含文件名和inode编号。
在这里插入图片描述
INODES区
在这里插入图片描述

分配方法(和内存分配方法类比)

连续分配

  • 优点
    1.简单,逻辑地址块到物理地址块的转换很快。
  • 缺点
    1.会产生外部碎片
    2.文件的增加和修改不方便,可能会遇到后面地址块不够的情况。
一、课程设计的内容 本课程设计要求设计一个模拟的多用户多级目录文件系统。通过具体的文件存储空间的管理、文件的物理结构、目录结构和文件操作的实现,加深对文件系统内部功能和实现过程的理解。 二、课程设计的要求与数据 1. 在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个多用户多目录文件系统。 2. 文件物理结构可采用显式链接或其他方法。 3. 磁盘空闲空间的管理可选择位示图或其他方法。如果采用位示图来管理文件存储空间,并采用显式链接分配方式,则可以将位示图合并到FAT中。 4. 文件目录结构采用多用户多级目录结构,每个目录项包含文件名、物理地址、长度等信息,还可以通过目录实现对文件的读和写的保护。目录组织方式可以不使用索引结点的方式,但使用索引结点,则难度系数为1.2。 5. 设计一个较实用的用户界面,方便用户使用。要求提供以下相关文件操作: (1)具有login (用户登录) (2)系统初始化(建文件卷、提供登录模块) (3)文件的创建: create (4)文件的打开:open (5)文件的读:read (6)文件的写:write (7)文件关闭:close (8)删除文件:delete (9)创建目录(建立子目录):mkdir (10)改变当前目录:cd (11)列出文件目录:dir (12)退出:logout 6. 系统必须可实际演示,选用程序设计语言:C++、C等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值