您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页文件系统原理

文件系统原理

来源:五一七教育网


1)一个文件,它是文件内容和文件属性的集合
文件=文件属性+文件内容
文件属性

Block Group:ext2文件系统会根据分区的大小划分为数个Block Group。而每个Block Group都有着相同的结构组成。管理各区的例子。
一个Block group区块中有6个小块Data blocks块:存文件内容的区域,磁盘最小单位是扇区,然后以块的形式呈现,磁盘虽然是扇区为最小单位但是文件不一定按照扇区的标准来储存,文件常见是4KB的大小为基本单位1KB=1024字节,扇区基本单位为512字节,所以文件基本单位需要8个连续扇区储存。所以操作系统在访问磁盘时是以4KB方式以块访问磁盘—便于管理,不然一个扇区太小了,要分更多的精力管理!文件系统以4KB大小提取,而一个一个的块有自己的编号一个一个的数据块。
inode Table:inode:存放的是单个文件的所有属性一般是128字节,而一个扇区可以存储4个Inode,也就是4个文件的inode,一般而言一个文件一个inode,磁盘上存在很多文件会有很多的inode,因此存在inode表,用于存放所有文件的inode属性,而每一个文件有自己的inode编号,用于识别文件,inode和数据块可以建立连接,因此将属性和内容分开存储,再通过连接将他们连接起来。在Linux文件属性中,是没有包含文件的名称的,只有文件的编号通过ls -li可以查看文件inode编号

在linux中标识一个文件都是用的是inode编号。而在inode属性列表中有一个字段是int blocks[NUM],其中它是与文件的数据块对应,记载数据块的块号,可以通过数据块从而知道有没有数据内容,inode属性列表不仅仅只有这一属性字段还有很多如{文件类型、权限、引用计数、拥有者、所属组、ACM时间等等…}。
Block Bitmap:申请一个数据块然后用了之后又将其释放这一动作是十分频繁的,那么如何得知一个数据块的使用情况,用比特位图的标记方式,标记一个数据块是否被使用,没有被使用为0,被使用了标记为1,当将数据块释放之后只需要重新将比特位标记为0即可,不用频繁的将数据之类的由操作系统加载,用比特位图中的比特位和数据块块号映射,比特位图中的内容标识该块使用与否,所有当要删除一个文件的时候不需要把文件的块的内容清空只要把它映射到位图上的储存位由1改为0即可。Block Bitmap中记录着Data Block中哪个数据块已经被占用,哪个数据块没有被占用。
inode Bitmap:比特位的位置和inode的编号映射,比特位的内容表示一个inode是否可以被使用,就是这个文件是否是有效的。
Group Descriptor Table:块的使用情况,块组相关属性,与组有关的属性,表示整个分组的使用情况,由GDT管理。
Super Block:存放文件系统本身的结构信息,里面包含整个分区的基本使用情况(一共有多少个组、每个组大小、每个组的block数量、inode数量等等)。记录的信息主要有:bolck 和 inode的总量,未使用的block和inode的数量,一个block和inode的大小,最近一次挂载的时间,最近一次写入数据的时间,最近一次检验磁盘的时间等其他文件系统的相关信息。Super Block的信息被破坏,可以说整个文件系统结构就被破坏了。super block不一定在所有分组都存在但是又不能只存在于一个分组因为若是只存在于一个分组,一旦这个分组的超级快被破坏,那么整个文件系统就被破坏了,所有可以存在于几个分组,但是里面都是重复信息所有不用每一个分组都存在。
分组分区分块内容都提前写到了内存中,每一个分区在使用之前,都必须先将部分文件系统的属性信息提前设置进对应分区中,方便后续使用分区或者分组—>这是一个格式化的过程。inode Table和Data Blocks属于文件,在加载文件时要先将这两个清空(初始化),还要把其他的块写入,最后再把文件的属性和内容写入相应的块中,在使用之前要先将这些基本的属性都给写好,然后i建立文件时就是填写块。剩余的四个块是管理inode Table和Data Blocks块的属性信息,管理有对应的顺序(先描述,在组织).
而格式化重新写入整个分区,文件系统属性那些信息也会重新写入,每个组的划分也会写入。

ls -l读取储存在磁盘上的文件信息


查看一个文件在磁盘上存储的详细信息,用stat查看

所以用stat查看文件属性时,可以查看到各种信息。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务