Xiafs was a file system for the Linux kernel which was conceived and developed by Frank Xia and was based on the MINIX file system.[1] Today it is obsolete and not in use, except possibly in some historic installations.


Linux originally used the MINIX file system, but it had a number of limitations. For example, the length of filenames was limited to 14 characters and the partition size was limited to 64 MB. To replace the MINIX file system, the extended file system (or ext) was developed. However, ext retained some problems such as poor performance and the lack of some date stamps. Two contenders for replacing ext were quickly developed: ext2 and Xiafs. The two file systems were included in the standard kernel in December 1993 (Linux 0.99.15). ext2 and Xiafs had the same goal: To offer good performance, reasonable limitations, and fixing the flaws of ext. Initially, Xiafs was more stable than ext2, but being a fairly minimalistic modification of the MINIX file system, it was not very well suited for future extension.[2][3]

The end result was that Xiafs changed very little while ext2 evolved considerably, rapidly improving stability and performance, and adding extensions. ext2, after some shakedown time, quickly became the standard file system of Linux. Since then, ext2 has developed into a very mature and robust file system.

Xiafs and the original ext were removed from Linux version 2.1.21, as they were no longer in use and were not maintained. ext2, ext3, and their successor ext4 are in the Linux kernel. As an exercise in computer history and as a file system tutorial, Xiafs was ported to modern Linux in 2013.[4]

Comparison with ext2

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (January 2017) (Learn how and when to remove this template message)

Xiafs was less powerful and offered less functionality than ext2. The maximum size of a file was 64 MiB and the maximum size of a partition was 2 GiB. While this was an improvement over ext, it did not measure up to ext2. Xiafs used less disk space for its control structures and it had greater stability at that time.

See also


  1. ^ Dr. Linux. Linux Systems Labs. 1994. p. 514.
  2. ^ "The Linux ext2/3/4 Filesystem: Past, Present, and Future", Ted Ts'o
  3. ^ Card, Rémy. & Ts'o, Theodore. & Tweedie, Stephen (1994). "Design and implementation of the second extended filesystem". Proceedings of the First Dutch International Symposium on Linux. ISBN 90-367-0385-9.((cite journal)): CS1 maint: multiple names: authors list (link)
  4. ^ Porting an Ancient Filesystem to Modern Linux, Jeremy Bingham