As of late, file-systems have been a popular topic among Linux developers and users. The EXT4 file-system
was recently stabilized and it brings some modest performance improvements
and is finding its way into modern distributions
. While not yet stabilized, the Btrfs file-system
was merged into the Linux 2.6.29 kernel
and is poised as the Linux competitor to Sun's famed ZFS file-system. There is also open-source work underway in supporting Microsoft's exFAT file-system
on Linux. On top of all of that, there is also the Tux3 file-system.
The Tux3 file-system was last talked about here in late November
when they were moving from their FUSE module to doing a kernel port of this file-system that succeeds the never-released Tux2. Now, however, the Tux3 file-system is making it a bit further. Last week the Tux3 developers were successful in using Tux3 as the root file-system
. Their initial benchmarks are also fairly promising and according to Daniel Phillips the file-system has been "exceptionally stable" for him.
Yesterday there was a talk at the Southern California Linux Expo by Daniel Phillips on Tux3. Daniel had talked about the design of Tux3, its different models and processes, and how it compares to different Linux file-systems as well as to other operating systems like HAMMER on BSD or ZFS on OpenSolaris. Tux3 has a user-space utility for reading/writing and creating Tux3 file-systems as well as a Tux3 FUSE-based file-system, a Tux3 virtualized kernel file-system, and lastly there is now a Tux3 kernel file-system for running on real hardware.
In some of the performance numbers shared by Daniel, the Tux3 file-system is slightly faster than EXT3 at copying the root file-system to a new partition. The next steps for the Tux3 file-system include working on atomic commit, beginning the review cycle, developing an allocation policy, working on versioning, directory index support, extent allocation, and replication support. The slides from the Tux3 SCALE talk can be found on the Linux kernel mailing list
The Tux3 project has been making great progress and following its review period, soon perhaps we will see it enter the mainline kernel (of course, as an experimental option). Kernel patches for the Tux3 file-system are supposed to be in a Git tree within the next few days.