inode,间接块索引表,文件控制块FCB
由于硬盘是低速设备,为了避免频繁访问硬盘,等数据积攒到一定大小才一次性访问硬盘,足够大小数据就称为块。采用索引结构的文件系统,文件中的块依然可以分散到不连续的零散空间,保留了磁盘高利用率的优点,文件系统为每一个文件的所有块建立了一个索引表,索引表就是块地址数组,每个数组元素就是块的地址,数组元素下标就是文件块的索引。包含此索引表的索引结构就是inode,用来索引跟踪一个文件的所有块。
文件系统为实现文件管理方案,必然会创造出一些辅助管理的数据结构,只要用于管理、控制文件相关信息的数据结构都称为FCB。
目录项与目录
(1)每个文件都有自己单独的 inode,inode是文件实体数据块在文件系统上的元信息。
(2)所有文件的inode集中管理,形成inode数组,每个inode 的编号就是在该 inode 数组中的下标。
(3)inode 中的前 12个直接数据块指针和后3个间接块索引表用于指向文件的数据块实体。
(4)文件系统中并不存在具体称为“目录”的数据结构,同样也没有称为“普通文件”的数据结构,统一用同一种 inode 表示。inode 表示的文件是普通文件,还是目录文件,取决于inode 所指向数据块中的实际内容是什么,即数据块中的内容要么是普通文件本身的数据,要么是目录中的目录项。
(5)目录项仅存在于 inode 指向的数据块中,有目录项的数据块就是目录,目录项所属的 inode 指向的所有数据块便是目录。
(6)目录项中记录的是文件名、文件inode 的编号和文件类型,目录项起到的作用有两个,一是粘合文件名及 inode,使文件名和 inode关联绑定,二是标识此inode所指向的数据块中的数据类型(比如是普通文件,还是目录,当然还有更多的类型)。
(7)inode是文件的“实质”,但它并不能直接引用,必须通过文件名找到文件名所在的目录项,然后从该目录项中获得inode 的编号,然后用此编号到inode数组中去找相关的 inode,最终找到文件的数据块。
超级块与文件系统布局
超级块是保存文件系统元信息的元信息的固定地方,它是在为分区创建文件系统时创建的,所有有关文件系统元信息的配置都在超级块中。
文件系统布局如下
标签:文件,数据,简介,文件系统,索引,inode,目录 From: https://www.cnblogs.com/LCAB/p/17067036.html