在Linux系统中,日志文件系统分为很多种类型,其中比较典型的是:ext3、ext4、xfs等,那么Linux中EXT3与EXT4的区别有哪些?以下是详细的内容介绍。

  Linux Kernel自2.6.28开始正式支持新的文件系统ext4。ext4是ext3的改进版,修改了ext3中部分重要的数据结构,而不仅仅像ext3对ext2那样,只是增加了一个日志功能而已。ext4可以提供更佳的性能和可靠性,还有更为丰富的功能:

  1、与ext3兼容

  执行若干条命令,就能从ext3在线迁移到ext4,而无须重复格式化磁盘或者重新安装系统。原有ext3数据结构照样保留,ext4作用于新数据,当然,整个文件系统因此也获得了ext4所支持的更大容量。

  2、更大的文件系统和更大的文件

  较之ext3目前所支持的最大16TB文件系统和最大2TB文件,ext4分别支持1EB的文件系统,以及16TB的文件。

  3、无限数量的子目录

  ext3目前只支持32000个子目录,而ext4支持无限数量的子目录。

  4、extents

  ext3采用间接块映射,当操作大文件时,效率极其低下。比如一个100MB大小的文件,在ext3中要建立25600个数据块的映射表。而ext4引入了现代文件系统中流行的extents概念,每个extents为一组连续的数据块,上述文件则表示为该文件数据保存在接下来的25600个数据块中,提高了不少效率。

  5、多块分配

  当写入数据到ext3文件系统中时,ext3的数据块分配器每次只能分配一个4KB的块,写一个100MB文件就要调用25600次数据块分配器,而ext4的多块分配器multiblock allocator支持一次调用分配多个数据块。

  6、延迟分配

  ext3的数据块分配策略是尽快分配,而ext4和其它现代文件操作系统的策略是尽可能地延迟分配,直到文件在cache中写完才开始分配数据块并写入磁盘,这样就能优化整个文件的数据块分配,与前两种特性搭配起来可以显著提升性能。

  7、快速fsck

  以前执行fsck第一步就会很慢,因为它要检查所有的inode,现在ext4给每个组的inode表中都添加了一份未使用的inode的列表,今后fsck ext4文件系统就可以跳过它们而只去检查那些在用的inode了。

  8、日志校验

  日志是最常用的部分,也极易导致磁盘硬件故障,而从损坏的日志中恢复数据会导致更多的数据损坏。ext4的日志校验功能可以很方便地判断日志数据是否损坏,而且它将ext3的两阶段日志机制合并成一个阶段,在增加安全性的同时提高了性能。

  9、无日志模式

  日志总归有一些开销,ext允许关闭日志,以便某些有特殊需求的用户可以借此提升性能。

Linux中EXT3与EXT4的区别!相关推荐

  1. linux中系统调用和库函数的区别

    linux中系统调用和库函数的区别 2013-05-03 22:18:20 分类: LINUX 首先,要说一下两者的概念: 系统调用 :是操作系统为用户态运行的进程和硬件设备(如CPU.磁盘.打印机等 ...

  2. Linux 中su 与su - 的区别

    Linux 中su 与su - 的区别 一.区别 Linux 中切换用户的命令是 su 或 su - . su命令和 su - 命令最大的本质区别就是: 前者只切换了root身份 , 但是shell环 ...

  3. Linux中su与su - 的区别

    Linux中su与su - 的区别 最近在学习任务调度执行,其中我要在轮子组下的一个用户,使用at并重定向,发现没有权限 下面是使用su [root@alytest ~]# su jack [jack ...

  4. linux中hda和sda的区别

    linux中hda和sda的区别 hda一般是指IDE接口的硬盘,hda一般指第一块硬盘,类似的有hdb,hdc等 sda一般是指SATA接口的硬盘,sda一般指第一块硬盘,类似的有sdb,sdc等 ...

  5. Linux中线程和进程的区别

    Linux中线程和进程的区别 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,它是系统进行资源分配和调度的一个独立单位.例如,用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括 ...

  6. linux mkdir -m权限,Linux中mkdir和touch命令区别

    一.目的 本文将介绍linux下新建文件或文件夹.删除文件或文件夹命令.         touch能够新建文件,mkdir用来新建文件夹.rm用来删除文件或文件夹.         本文将选取ubu ...

  7. Linux 中 sudo和su的区别

    Linux 中 sudo和su的区别 Linux小知识:sudo su和su的区别 1.内容不同: su命令:用来切换用户,substitute英文含义"代替"的意思. sudo命 ...

  8. linux系统常见文件系统ext2、ext3、ext4的区别-小白笔记

    ext2.ext3.ext4文件系统 ext2,即第二代扩展文件系统,英文是second extended filesystem,是linux系统内核所用的文件系统,用以代替ext,于1993年1月加 ...

  9. Linux文件系统ext3与ext4主要区别

    很长一段时间以来,ext3是很多linux发行版默认的文件系统,现在ext4已经发布,并且已经有发行版开始使用ext4作为默认的文件系统了(其实最初的时候ext4是作为ext3的扩展,但是为了保证ex ...

最新文章

  1. 在mysql查询数据库密码_如何查询mysql数据库密码
  2. [C++]键盘钩子程序
  3. linux 用户和权限管理
  4. 关于百度分享——bdCustomStyle一点bug
  5. 64位系统上安装apache
  6. oracle13001,安装oracle11g 遇到INS-13001环境不知足最低要求 解决方法
  7. 自己的利益,还是用户的名义?
  8. 华为鸿蒙万物互联应用,为什么我需要万物互联? 鸿蒙能带来什么?
  9. Linux 各种压缩类型文件 解压命令 整理 tar.bz2 tar.gz tgz等等
  10. C语言指针类型和类型转换
  11. 十大Java编程工具
  12. Android阿里云推送离线通知集成踩坑之路
  13. QTP和翻译软件的故事
  14. Windows Azure Active Directory (1) 前言 - 基于声明的验证和授权
  15. cad2010怎么隐藏标注尺寸,cad2007怎么隐藏标注尺寸
  16. Python循环结构——while
  17. 小程序系统API调用
  18. 【从0到1搭建LoRa物联网】20、LoRaWAN扩展
  19. Best Service Accordions 2 Kontakt 综合手风琴音色库
  20. 辨析 工作绩效数据、工作绩效信息、工作绩效报告

热门文章

  1. Node.js 中 __dirname 和 ./ 的区别
  2. java实现字符串反转
  3. mp4视频损坏无法播放如何修复?
  4. Win10便签设置日历的一周第一天为周日的方法
  5. java 数字 汉字_Java提取字符串中的汉字、字母、数字
  6. HTML——选择器(1)
  7. 获取本地外网ip地址
  8. 自学编程的人,90%以上都会掉进这些坑,避开这些误区能提高N倍学习效率
  9. Unity3DCPU优化方法相关理论知识
  10. 云计算,你知道多少?