`
lobin
  • 浏览: 430865 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

关于ext文件系统

 
阅读更多

ext是linux使用的文件系统。ext文件系统现在已经有好几个版本,包括ext2,ext3以及ext4。实际上还存在ext 0.x,1.x,2.x,3.x,4.x等版本。

 

关于ext文件系统

既然是文件系统,那么ext就是以文件的形式来存储数据的。这点在其他所有文件系统中都是一样的,包括windows下的FAT,FAT32,NTF等。

 

ext文件系统是以块(包括block以及inode,inode也是一种特殊的block)以及块组来组织文件的。包括ext2,ext3以及ext4,它们基本都是按照这种方式来组织文件的。

 

ext

这里主要讲下ext文件系统中一些常用的概念,不同的ext版本如ext2,ext3以及ext4存在一些不一样的设计,这里主要讲讲通用的概念。

 

block

块是ext文件系统中数据组织的基本单位,块是一组连续字节组成的存储空间单元,实际上它是连续的一个或多个扇区组织的存储空间单元。每个块都有一个编号,从0开始,0,1,2,3,...。

 

在ext文件系统中除了普通的块之外,还有inode,Superblock,它们其实也是一种特殊的块(block)。

 

块的大小计算

块的大小并没有直接指出,这个实际上是有个计算公式进行计算。块的大小计算需要依据超级块中的第24个字节开始的4字节。

 

我们在另一篇文章介绍ext2的时候给出了这个公式:https://www.iteye.com/blog/lobin-609813

 

inode

 

Superblock

 

超级块存放在卷(volume)开始的第1024字节(1K)位置,如果扇区为512字节大小的话(一个扇区通常为512字节),那么超级块就存放在卷(volume)开始的第3个扇区。

 

超级块大小为1024字节(1K)。

 

                     |----超级快------|

     0         1   v                   v

+--------+--------+--------+--------+

+--------+--------+--------+--------+

     0         1        2        3

 

 

Block Group

块组(Block Group)

 

Block Group Descriptor Table

块组描述符表(Block Group Descriptor Table)

 

 Block Group Descriptor Table

+----------------------------+

|   Block Group Descriptor   |

+----------------------------+

|   Block Group Descriptor   |

+----------------------------+

|          ... ...           |

+----------------------------+

|   Block Group Descriptor   |

+----------------------------+

 

块组描述符

块组描述符包含块组中重要数据信息的存放位置。

 

ext文件系统实现

 

ext2

关于ext2文件系统,参考另一篇文章:https://www.iteye.com/blog/lobin-2324643

 

ext3

 

ext4

分享到:
评论

相关推荐

    查看文件 ext资料

    不过,这个文件可能包含了关于ext文件系统的文档、教程、示例代码或者是用于分析和操作ext文件系统的脚本。如果要深入学习,可以解压这个文件,查阅其中的内容,结合上述提到的知识点进行学习。 总之,掌握ext文件...

    ext文件系统浏览

    标题中的“ext文件系统浏览”指的是能够查看和操作Linux操作系统使用的EXT系列文件系统(如EXT2、EXT3、EXT4)的工具。在Windows环境下,由于默认不支持这些文件系统,因此需要借助特定的软件来实现对它们的浏览和...

    Ext4文件系统

    Ext4文件系统在Ext3的基础之上做了很多改进,引入了大量新功能,这些改进主要是为了提高未来的Linux系统的性能。 虽然Ext4做了很多改进,但依然能够与Ext3实现向后和向前的兼容性,这一点的确很难得。 因为Ext3文件...

    linux ext2 文件系统模拟 c语言实现

    Linux的EXT2(第二扩展文件系统)是早期广泛使用的文件系统之一,特别是在嵌入式系统和Linux服务器上。EXT2的C语言实现是一项技术性极强的任务,涉及到对操作系统底层机制的理解,包括文件系统的结构、inode、超级块...

    android ext4文件系统打包详解

    在Android开发中,ext4文件系统打包是系统镜像制作的重要一环。本文档将详细介绍在Android平台上使用make_ext4fs工具打包ext4文件系统镜像的过程,并对相关的操作注意事项进行说明。同时,文档也会涉及使用simg2img...

    ext2fsd ext文件系统解析

    EXT文件系统,全称为Extended File System,是Linux操作系统中广泛使用的日志文件系统之一。它最初由Richard G. Steven在1992年为Linux设计,以替代原有的Minix文件系统,随后发展出多个版本,包括EXT2、EXT3和EXT4...

    制作ext2文件系统的方法 .

    它最初是为了解决当时存在的MINIX和EXT文件系统的局限性而设计的,特别是在处理大文件和大量小文件方面。EXT2文件系统在Linux社区中广泛使用,直到后来被EXT3和EXT4等更先进的文件系统所取代。本文将详细介绍如何...

    日志文件系统EXT

    ### 日志文件系统EXT:事务元数据日志在Linux EXT2FS文件系统中的应用 #### 概述 本文档详细介绍了为Linux EXT2FS文件系统设计并实现事务元数据日志(journal)的工作进展。该研究针对的是如何提高文件系统在崩溃...

    EXT江湖(全)

    EXT江湖(全)这个标题可能是指一个关于EXT文件系统或者EXT系列在计算机领域的应用的完整资料集合。EXT,全称为Extended File System,是Linux操作系统中最常见的文件系统之一,由Linus Torvalds在开发最初的Linux...

    EXT3文件系统下的手工定位文件 .docx

    EXT3文件系统是一种广泛用于Linux操作系统的日志型文件系统,由Linux内核开发者Stephen Tweedie设计。它提供了一种可靠的方式来组织和管理磁盘上的数据,支持大容量存储和快速的数据恢复。EXT3的主要特点是其日志式...

    认识ext2文件系统

    它比早期的ext文件系统更为高效和稳定,支持大容量存储设备,是Linux环境下的主流文件系统之一。ext2文件系统的特点包括了对分区进行格式化的操作,格式化会指定一个特定的文件系统,并且一个分区通常只能有一个文件...

    EXT2文件系统

    EXT2文件系统存取结构详细介绍 EXT2文件系统是 Linux 系统中的标准文件系统,由 Minix 文件系统扩展而来,具有高效的存取性能。在 EXT2 文件系统中,文件由 inode 进行唯一标识,每个文件可能对应多个文件名,只有...

    fat ntfs ext文件系统详解

    总的来说,了解和掌握FAT、NTFS和EXT文件系统的特性和操作,对于任何IT专业人员来说都是至关重要的,无论是在日常的文件管理还是在面临数据丢失问题时,都能提供必要的知识支持。通过深入学习这三种文件系统,你可以...

    Linux EXT4文件系统分析.pdf

    Linux EXT4文件系统分析.pdf

    ext2 and ext3文件系统

    - **超级块**: 存储关于整个文件系统的基本信息。 - **块组描述符**: 包含文件系统特定区域的信息。 - **数据块位图**: 用于追踪哪些数据块已被分配。 - **索引节点位图**: 跟踪哪些索引节点已经被使用。 - **索引...

    Ext4文件系统介绍

    ### Ext4文件系统介绍 #### 一、Ext4文件系统的动机与背景 Ext4作为下一代Ext2/3文件系统的代表,其开发背后的动机主要是解决早期文件系统存在的几个关键问题: 1. **文件系统大小限制**:传统的Ext2/Ext3文件...

    Linux系统环境Ext3文件系统的使用介绍

    Linux系统环境下的Ext3文件系统是一种广泛使用的日志文件系统,它是从早期的Ext2文件系统发展而来的。Ext3的出现主要是为了弥补Ext2在关键业务应用中的不足,特别是Ext2缺乏日志功能的问题。Ext3文件系统通过引入...

    ext文件系统查看

    "ext文件系统查看"这一主题主要涉及的是在Windows操作系统中如何访问和操作Linux系统的EXT2、EXT3和EXT4这三种文件系统。这些文件系统在Linux中被广泛使用,但默认情况下,Windows并不支持直接读取或写入这类格式的...

    模拟Linux ext2文件系统

    Linux的ext2(第二扩展文件系统)是早期广泛使用的文件系统之一,它的设计简洁,适合小型设备和资源有限的环境。这个C语言实现的工程旨在模拟ext2文件系统,为学习者提供一个直观的平台来理解和研究其工作原理。下面...

    模拟EXT2文件系统.zip

    EXT2,全称为“Extended File System 2”,是Linux操作系统早期广泛使用的日志文件系统之一。这个压缩包“模拟EXT2文件系统.zip”包含了几个关键的源代码文件,如`init.c`、`main.c`、`init.h`和`main.h`,这暗示着...

Global site tag (gtag.js) - Google Analytics