IBM JFS

IBM JFS was originally designed for the OS/2 Warp Server operating system. The filesystem was developed from the ground up for this operating system, not as an extended feature set for a nonjournaling filesystem. In addition to journaling capabilities, JFS also supports dynamic inode allocation. In February 2000, IBM began to port its JFS implementation to Linux.

JFS uses B+ trees to organize and manage large directories. B+ trees are similar to B-trees, but they use indexing to improve searches and data retrieval. Smaller directories—that is, directories with fewer than eight entries—use a traditional approach, storing directory information within the directory’s inode. This two-pronged approach helps JFS perform well when working with heavily populated directories, as well as with sparse directories.

The maximum filesystem size under JFS is based on the chosen block size. With a 4 KB block size, a maximum filesystem size of 4 petabytes (4000 terabytes) is possible. With a block size of 512 bytes, a maximum of 512 terabytes is allowed.

Get Managing RAID on Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.