ext3日志文件系统工作原理理解

    ext3文件系统是在ext2文件系统的基础上增加了日志功能。

    具体的做法就是,在向文件系统中的文件写入数据的时候,会先产生一个journal log日志,这个journal log日志是生成在内存中的。系统中有一个后台进程kjournald2,会定时查看这些journal log日志对应的磁盘操作是否已经将数据块写入磁盘的文件系统中了,如果写入了的话,内存中的这个journal log日志就可以抛弃了,否则,线程会将该日志转移到磁盘上的checkpointlist里。

    对于磁盘上的checkpointlist来说其中的journal log日志也不能一直存在,否则是非常占用空间的,因此,有一套checkpoint机制,用于清楚checkpointlist中的journal log日志,具体来说是当有新的journal log需要写入checkpointlist之前,检查checkpointlist中是否有足够的空间,如果没有的话,就调用该checkpoint机制,checkpoint机制检查checkpointlist中的journal log是否已经将数据写入磁盘的文件系统,写入的话则直接删除该log,没有的话则写入和删除。

转自:http://blog.sina.com.cn/s/blog_a558c25a0101ds15.html


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ext4(第四扩展文件系统)是Linux操作系统中最常用的文件系统之一。下面是对ext4文件系统的一些基本原理进行简要分析: 1. 超级块(Superblock):ext4文件系统的每个文件系统都有一个超级块,其中包含了文件系统的元数据信息,如块大小、inode表的位置等。 2. 块组(Block Group):ext4将磁盘分成多个块组,每个块组包含一组数据块和相关的元数据结构。每个块组都有一个块组描述符表(Block Group Descriptor Table),用于描述该块组的信息。 3. inode表:ext4使用inode(Index Node)来存储文件和目录的元数据,包括文件的权限、所有者、时间戳等。每个inode占用固定大小的空间,并通过索引链接到相应的数据块。 4. 数据块:ext4使用多级索引结构来管理文件数据块,包括直接块、间接块和二次间接块。直接块存储文件的实际数据,而间接块和二次间接块则存储对其他数据块的索引。 5. 日志(Journaling):ext4采用了日志功能来提高文件系统的可靠性和恢复性。通过在事务提交前将元数据更改写入日志中,可以确保在发生系统崩溃或断电等情况下,文件系统可以快速恢复到一致的状态。 6. 内存缓存:ext4利用Linux内核的页缓存机制来提高文件系统的读写性能。文件系统的数据和元数据通常会被缓存在内存中,当需要读取或写入数据时,可以避免直接访问磁盘。 7. 特性(Features):ext4引入了一些新的特性,如支持更大的文件文件系统、更高的性能、更好的容错能力等。同时还支持一些高级功能,如文件系统加密、透明压缩、快照等。 这只是对ext4文件系统原理的简要概述,实际上,ext4还有许多其他的细节和特性。深入了解和理解这些原理可以帮助你更好地使用和管理ext4文件系统

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值