【我的笔记】文件系统(一)基本结构知识

内存的主要使用者是进程,而外存的主要使用者是用户,外存中的信息可以离开进程独立的存在。

可将外存数据的集合体称为文件,将外存抽象成文件的集合。外存的管理者称为文件系统。

外存通常被划分为大小相等的存储块,每个存储块有一个地址(序号)。外存的基本访问单位为块。


1、外部存储器

(1)磁带:能永久保存大容量数据,顺序存取,存取速度慢,主要用于备份。

(2)磁盘:随机存取,可以定位并存取磁盘上任意存储块中的数据。

一次磁盘操作时间=寻道时间 + 旋转延迟时间 + 数据传输时间。

(3)光盘:容量大,便宜,结构与磁盘类似。

(4)U盘:Flash Memory,与内存类似,在掉电情况下内容不会丢失

(5)外存抽象

【我的笔记】文件系统(一)基本结构知识_第1张图片

(6)分区与卷

【我的笔记】文件系统(一)基本结构知识_第2张图片
磁盘分区的实例

2、外存管理

(1)分配策略

外存分配给文件 —— ①预分配(文件创建时为其分配存储空间);② 动态分配(按需分配)

(2)分配单位

分配单位可以是扇区、块、簇。综合考虑,常用的分配单位有以下两种:

①连续、变长大分配单位 ——NTFS

②不连续、定长小分配单位(块) ——EXT2/3/4

(3)空闲块管理(略写)

外存管理的首要任务是记录块的使用情况。

①空闲空间表法——适用于连续、变长大单位分配、

②空闲块链表法——小块链表适合于以块为单位的定长、动态分配;大块链表适合于连续的、变长分配。

③位图法——即可用于变长的连续分配,也可用于定长的非连续分配。

④空闲块成组链接法

【我的笔记】文件系统(一)基本结构知识_第3张图片

3、文件物理结构

逻辑块是分配给文件的。在文件的生存周期中,它会请求追加和释放逻辑块,逻辑块内的数据会被读、写。

文件系统要为每个文件建立一个数据结构,记录它的各个文件块在外存中的位置(文件的各个数据块多对应的逻辑块)映射关系取决于文件在外存上的存储方式或存储结构(即文件的物理组织结构)。

(1)连续结构——可用作备份,光盘上大量使用

将文件数据连续存储在连续的逻辑块中,只需文件在外存上的开始位置和大小。

(2)串连结构:每个逻辑块中设立一个指针,指向文件的下一个逻辑块。

(3)索引结构:为每个文件建立一个索引表,在其中记录文件各数据块到逻辑块的映射关系。

【我的笔记】文件系统(一)基本结构知识_第4张图片

(4)多重索引结构

为了方便扩充,应建立多重索引表(索引表分级,类似多级页表)

(5)ucore采用简化的多重索引结构。前12块(0-11)直接索引,12块以后简介索引。

每个sfs_disk

【我的笔记】文件系统(一)基本结构知识_第5张图片

文件最大为 1024*4096 + 12*4096 字节。


4、文件控制块

(1)FCB文件控制块 —— 文件的档案,一个文件控制块唯一的描述一个文件。包含内容:

【我的笔记】文件系统(一)基本结构知识_第6张图片
【我的笔记】文件系统(一)基本结构知识_第7张图片

(2)一个文件有两种标识:文件系统用文件控制块和标志号描述整个文件;用户用文件名。

文件名到文件控制块的映射 --> 目录或文件夹

一个目录通常是一张表,其中的表项称为目录项,一个 目录项记录一个名字与一个FBC的对应关系。(目录项:文件名到文件的映射,即文件名与inode号的对应关系)

一个文件只能有一个FBC,但是可以有多个文件名。代表同一文件的不同名字可以位于不同的目录中。

①单级目录结构

②二级目录结构:用户名为第一级,文件为第二级

③树型目录结构:允许用户在自己的目录中再建立子目录。

目录树一个唯一的根,文件是树的叶子。标识文件的方法是路径名。

用户或进程当前的位置为当前工作目录,用户注册时的工作目录为他的home。

从根到某一个特定文件的路径称为绝对路径;从当前工作目录到特定文件的路径称为相对路径。(绝对路径是相对于主目录 home 的路径名;相对路径名是相对于其当前工作目录的路径名)

④非循环图目录结构

树型目录结构不支持共享,增加了共享以后的树变成了图。

非循环图目录结构允许一个文件或目录出现在多个父目录中。

ucore中FCB结构的nlink就是硬链接数。

(3)ucore一个存储块中仅保存一个目录项。目录项:文件名到文件的映射,即文件名与inode号的对应关系。ucore目录是一个目录项的数组。

【我的笔记】文件系统(一)基本结构知识_第8张图片

EXE根目录文件实例:第一个名字“.”,第二个名字“..”,前两个inode号均为2。

(4)如果一个文件仅有一个名字,删除文件时要删除目录项和文件的FCB。如果文件有多个名字 --> 删除目录项不一定删除FCB。

你可能感兴趣的:(【我的笔记】文件系统(一)基本结构知识)