JFS System in Linux Server Operating System Log Files

  

JFS was developed by IBM and originally appeared on the AIX operating system, which provides a log-based byte-level, transaction-oriented, high-performance file system. It is scalable and robust, and its advantage over non-log file systems is its ability to quickly reboot: JFS can restore a file system to a consistent state in seconds or minutes. JFS is a full 64-bit file system. All JFS file system structured fields are 64-bit size. This allows JFS to support both large files and large partitions. To support DCE DFS (Distributed Computing Environment Distributed File System), JFS separates the concept of disk space allocation pools (called aggregations) from the concept of an installable file system subtree (called a file set). There is only one aggregate per partition; there may be multiple filesets per aggregate. In the first release, JFS only supported one fileset per aggregate; however, all metadata was designed to work in all situations. As shown, the beginning of the aggregation is a reserved area of ​​32K, followed by the aggregation of the main superblock. The superblock contains aggregated information such as the size of the aggregate, the size of the allocation group, the size of the aggregated block, and so on. The superblocks are in a fixed location, which allows JFS to find them without any additional information. Another important structure in aggregation is the Aggregate Inode Table and the Aggregate Inode Allocation Map for its mapping. Inode 0 in the AIT table is reserved, inode 1 describes the aggregation itself, inode 2 describes the aggregate block map, inode 3 describes the embedded log at the time of installation, and inode 4 describes the bad blocks found during aggregate formatting, reserved Inode 5 to 15 for future expansion. Starting with inode 16, each inode represents a fileset. The file set also has an index node table and an index node allocation mapping table for its mapping. The inode in the file set describes each file in the file set. JFS Disk Architecture JFS uses a partition-based addressing structure, along with an active block allocation strategy, to produce a compact, efficient, and scalable structure to map logical offsets in files to physical addresses on disk. A extent is a contiguous block sequence assigned to a file as a unit, and can be described by a triple consisting of a <logical offset, length, physical address>. The addressing structure is a B+ tree populated by the extent descriptor (the triples mentioned above), rooted in the inode, and the key is the logical offset in the file. JFS dynamically allocates space for disk inodes on demand, freeing up space that is no longer needed. This support bypasses the traditional method of preserving a fixed amount of space for disk inodes during file system creation, so users no longer need to estimate the maximum number of files and directories that the file system contains. In addition, this support separates disk inodes from fixed disk locations.
JFS provides two different directory organizations. The first organization is for small directories and stores directory content within the inode of the directory. This eliminates the need for different directory block I/Os and eliminates the need to allocate different memories. Up to 8 items can be stored directly in the inode, which do not include their own (.) and parent (..) directory entries, which are stored in different areas of the inode. The second organization is for larger directories, with each name being represented by a B+ tree that is keyed by name. It provides faster directory lookup, insertion, and deletion capabilities than traditional unordered directory organizations.

Copyright © Windows knowledge All Rights Reserved