Ext2

第二代扩展文件系统(英語:second extended filesystem,縮寫為ext2),是Linux内核所用的文件系统。它开始由Rémy Card设计,用以代替ext,於1993年1月加入Linux内核之中。它和BSD中的Unix文件系统具有相同的设计标准,同时也是Linux上的第一个商业级文件系统。[1]

ext2的经典实现是Linux内核中名为“ext2fs”的文件系统驱动;其他的实现(它们的软件质量和完整性可能不同)存在于GNU Hurd,Minix 3,以及某些BSD系统中,同时也以第三方驱动的形式存在于包括Windows和OS X在内的的操作系统。

ext2是多个LINUX发行版的默认文件系统,如Debian、Red Hat Linux等。直到后来完全兼容ext2的日志系统ext3开始取代ext2时,ext2仍然是闪存设备(例如:SD卡和U盘)上的Linux所使用的文件系统,因为没有日志功能使得Linux性能更好,同时也能减少写入的次数(闪存设备通常具有有限的写入次数)。最新版本的内核,同样也支持一种不含日志模式的ext4文件系统,这种模式能够带来类似的好处以及一些ext4独有的优点。

历史

Linux早期开发是在Minix系统上进行的跨平台开发。因此,MINIX文件系统被用作Linux的第一个文件系统。尽管Minix文件系统十分稳定,但是由于其内部使用了16位的偏移量,使得它能够支持的最大空间只有64MB,支持的最大文件名为14个字符。[2]正是由于这些不足,开发一套Linux原生的文件系统开始了。[2]

为了避免新文件系统的出现带来的问题,同时也为了给文件操作提供更好的API虚拟文件系统,一个文件系统的虚拟层,被加入到了Linux内核中。第一代扩展文件系统英语:extended file system)作为第一个使用虚拟文件系统的文件系统,发布于1992年4月,并集成在了版本为0.96c的Linux中。扩展文件系统解决了Minix文件系统中的两个主要的问题,它支持最多255个字符的文件名,最大支持2GB的空间。但是它同样也存在问题:文件访问,Inode修改以及文件内容修改没有使用独立的时间戳

为了解决这个问题,两种新的文件系统被开发出来,并出现在1993年1月发布的版本为0.99的Linux内核中,分别是:XFS文件系统第二代扩展文件系统ext2),它从Unix文件系统中吸取了很多优点,并用这些优点来改进之前的第一代扩展文件系统。并且第二代扩展文件系统在磁盘上存储的(与磁盘功能相关的)数据结构中预留了很多空间供未来进一步开发使用,这也使得它具有很好的可拓展性。

从那时起,第二代扩展文件系统就成为了许多对虚拟文件系统API进行拓展的开发的测试平台。由于第二代扩展文件系统好的拓展性以及开发人员对其内在实现非常清楚的优点,很多新特性,例如:POSIX访问控制表和extended attribute都是最初在第二代扩展文件系统上实现的。

在Linux内核版本号低于2.6.17[3],块驱动(block driver)中的限制使得第二代扩展文件系统最大支援至2TB的单个文件。

技術內容

其實作方式受到Unix文件系统的影響。

歷史

參考資料

  1. ^ Mauerer, Wolfgang. Professional Linux Kernel Architecture. John Wiley & Sons. 2010 [2016-01-05]. (原始内容存档于2016-05-11). 
  2. ^ 2.0 2.1 Strobel, Stefan; Uhl, Thomas. Linux—Unleashing the Workstation in Your PC. Springer-Verlag. 1994: 54. 
  3. ^ linux/kernel/git/torvalds/linux-2.6.git/commitdiff: Archive.is的存檔,存档日期2012-07-09, [PATCH] 2TB files: add blkcnt_t, Author:Takashi Sato, 26 Mar 2006 09:37:52 +0000 (01:37 -0800) — Commit allowing for large files, git.kernel.org

外部链接

磁盘
  • ADFS英语Advanced Disc Filing System
  • AdvFS
  • Amiga FFS英语Amiga Fast File System
  • Amiga OFS英语Amiga Old File System
  • APFS
  • AthFS英语AtheOS File System
  • Bcachefs
  • BFS
    • Be文件系统英语Be File System
    • 启动文件系统英语Boot File System
  • Btrfs
  • DFS英语Disc Filing System
  • EFS
  • Episode英语Episode filesystem
  • ext
    • ext2
    • ext3
    • ext3cow英语ext3cow
    • ext4
  • FAT
  • Files-11英语Files-11
  • Fossil
  • HAMMER英语HAMMER
  • HFS
  • HFS+
  • HPFS
  • HTFS英语High Throughput File System
  • IBM通用并行文件系统英语IBM General Parallel File System
  • JFS
  • LFS英语Log-structured File System (BSD)
  • MFS
    • Macintosh文件系统英语Macintosh File System
    • Tivo媒体文件系统英语Tivo Media File System
  • MINIX
  • NetWare文件系统英语NetWare File System
  • Next3英语Next3
  • NILFS英语NILFS
    • NILFS2英语NILFS2
  • NSS英语Novell Storage Services
  • NTFS
  • OneFS英语OneFS distributed file system
  • PFS英语Professional File System
  • QFS英语QFS
  • QNX4FS英语QNX4FS
  • ReFS
  • ReiserFS
    • Reiser4英语Reiser4
  • Reliance英语Reliance (file system)
  • Reliance Nitro英语Reliance Nitro
  • RFS
  • SFS英语Smart File System
  • Soup英语Soup (Apple)
  • Tux3英语Tux3
  • UBIFS
  • UFS
  • VxFS英语Veritas File System
  • WAFL英语Write Anywhere File Layout
  • Xiafs英语Xiafs
  • XFS
  • Xsan英语Xsan
  • zFS英语zFS (z/OS file system)
  • ZFS
  • HSF英语High Sierra Format
  • ISO 9660
  • ISO 13490英语ISO 13490
  • UDF
  • CXFS英语CXFS
  • GFS2英语GFS2
  • Google檔案系統
  • OCFS2英语OCFS2
  • OrangeFS英语OrangeFS
  • PVFS英语Parallel Virtual File System
  • QFS英语Quantcast File System
  • Xsan英语Xsan
  • 更多...
NAS
特殊
  • Aufs
  • AXFS英语AXFS
  • 启动文件系统英语Boot File System
  • CDfs英语CDfs
  • 光盘文件系统英语Compact Disc File System
  • Cramfs
  • Davfs2英语Davfs2
  • EROFS
  • FTPFS
  • FUSE
  • GmailFS
  • Lnfs
  • LTFS英语Linear Tape File System
  • MVFS英语Rational MultiVersion File System
  • SquashFS
  • UMSDOS英语FAT filesystem and Linux
  • OverlayFS
  • UnionFS英语UnionFS
  • WBFS英语WBFS
  • configfs英语configfs
  • devfs英语Device file
  • debugfs英语debugfs
  • kernfs英语kernfs (BSD)
  • procfs
  • specfs
  • sysfs
  • tmpfs
  • WinFS
加密英语Filesystem-level encryption
类型
  • 集群
    • 全局英语Global file system
    • 网格英语Grid File System
    • 自我认证英语Self-certifying File System
  • 闪存
  • 日志
  • 日志结构英语Log-structured file system
  • 对象
  • 面向记录英语Record-oriented filesystem
  • 语义英语Semantic file system
  • 隐写英语Steganographic file system
  • 合成英语Synthetic file system
  • 版本英语Versioning file system
特性
访问控制英语Computer access control
接口