You might have heard about the HFS+ file system before, but you might not know what it is precisely or how it varies from other file systems since it was the pre-APFS default file system on Macs. Here in this article, we provide information about HFS+ features, structure, and limitations. In addition, we explore how you can read the HFS+ file system on Windows.
Part 1. What Is the HFS+ File System?
HFS+, also known as Mac OS Extended, HFS Plus, or HFS Extended, has served as the primary journaling file system for the Mac OS X series since the introduction of Mac OS 8.1 in 1998. On Mac, it is often shown as Mac OS Extended.
Apple replaced HFS+ with APFS (Apple File System), a storage format designed for SSDs, when it released macOS High Sierra in 2017. However, owing to its compatibility, HFS+ is still a well-liked Mac disk format.
Supported Operating Systems
Supported operating systems of HFS+ are:
- macOS 10.12 or earlier
- Linux (read-only),
- Windows (read-only with third-party software),
- Xbox 360 and Xbox One.
How To Determine If Your File System Is APFS or HFS+?
Select the Disk Utility software by clicking Launchpad > Another folder on your Mac. Next, select your drive from the left side by clicking View > Show All Devices. The file system is now on the pop-up window beneath your drive's name.
Part 2. HFS+ vs. HFS
HFS+ file system optimizes the storage capacity of a big hard drive by increasing the number of allocation blocks on the disk and lowering the minimum size of a file.
Consequently, HFS+ permits a higher maximum number of files than its predecessor HFS (also called Mac OS Standard or HFS Standard). The following section shows the differences between HFS and HFS+.
A file holding 4 KB of data would take 64 KB of space using HFS on a 4 GB hard disk. However, on the 4 GB hard disk, Apple HFS+ would only take 4 KB. This is due to the fact that the HFS allocation block size would be 16 KB, but HFS+'s enhanced disk allocation block count and reduced block minimum size allow for less wasted space.
Due to its 32-bit block addresses, which are substantially longer than HFS's 16-bit equivalent, HFS+ allows much bigger files than HFS.
It encodes data in UTF-16 and normalizes it to a form akin to Unicode Normalization Form D using Unicode to name files (NFD).
N-forked files and file names with up to 255 UTF-16 characters are both supported by HFS+. In contrast to HFS, which utilizes a 16-bit table, HFS+ employs a 32-bit allocation mapping table. Additionally, HFS+ permits hard connections to folders, unlike the majority of other file systems. Most volume metadata is stored by HFS+ using B-trees.
Also Read: APFS vs HFS+ vs exFAT
Part 3. Structure of the HFS+ File System
Nine primary structures make up an HFS+ file system volume:
- Sectors 0 and 1 include boot blocks similar to the HFS boot blocks.
- Sector 2 contains Drive Header, similar to the Master Directory Block in an HFS volume. The size of the assignment blocks, timestamps, and the locations of additional volume structures like the Catalog File or Extent Overflow File are among the information about the volume stored in this file. It can always be located there.
- Free blocks and those being used are recorded in the allocation file. Each allocation block in HFS is represented by one bit, much as in the Volume Bitmap. If the bit is zero, the block is free, and if it is one, it is in use. In contrast to the HFS Disk Bitmap, the Allocation File is saved as a regular file and does not take up any specific reserved space at the beginning of the volume. Therefore, it is not required to be kept consecutively inside a volume, and its size may alter.
- Similar to the HFS Catalog file, the Catalog File is a B-tree containing entries for every file and directory stored on the disk. The primary difference between them is the size of the records with HFS+, which are bigger to accommodate more and larger fields. This may be observed in the fact that the HFS Catalog File is just 512 bytes in size, but the HFS+ Catalog File is 4 KB in Mac OS and 8 KB in Mac OS X. In HFS+, unlike HFS, where the fields are fixed, the fields are also variable based on the data they hold.
- A B-tree called the Extents Overflow File keeps track of the allocation blocks given to each file as extents. Up to eight extents may be stored for each fork in a file in the Catalog File record; extra extents are kept in the Extents Overflow File. Here, bad blocks are also counted as extents. This file's default sizes are 1 KB and 4 KB in Mac OS and Mac OS X, respectively.
- Only the HFS+ file system has the B-tree known as Attributes File. Inline Data Attribute records, Fork Data Attribute records, and Extension Attribute records are the three different sorts of 4 KB records that it may hold. The table below lists each of their objectives.
- Like the HFS volume Boot Blocks, Startup File is intended for non-Mac OS systems without HFS or HFS+ compatibility.
- The HFS+ volume's Alternate Volume Header, similar to the HFS Alternate Master Directory Block, may be found in the second-to-last sector.
- The last sector is set aside for Apple to utilize when making computers.
Part 4. Features of HFS+ (Mac OS Extended)
Better use of disk space
Two times as big as HFS, the HFS+ file system employs a 32-bit value to address allocation blocks. As a result, less space is wasted since more allocation blocks are permitted together with smaller block sizes.
Limits on HFS+ files in OS X and macOS:
- Limitless quantities are permitted
- A volume may contain up to 2.1 billion files
- Maximum file and volume size: 8 EB
File names are accessible internationally
HFS+ makes it simpler to create a descriptive name by allowing file names up to 255 characters and using UTF-16 to encrypt files and directories.
Improved data security
In Mac OS X 10.2.2, Apple introduced the journaling functionality to HFS+ to increase data stability; it quickly became the standard in Mac OS X 10.3. The journaling log may be used to find files on a disk if a system crash renders the file system unreadable.
Part 5. Benefits and Limitations of HFS+ File System
The HFS+ file system, sometimes called Mac OS Extended or Mac HFS+, is compatible with many kinds of storage media, including optical discs. On Unix and Linux systems, partitions may generally be mounted, and HFS+ provides journaling.
Optional repo packages are often available even if a certain kernel doesn't support HFS+; however, sometimes, they allow the reading of HFS+-formatted partitions. Additionally, third-party software like HFS for Windows by Paragon Software or MacDrive by Mediafour can enable HFS+ functionality on Windows.
Allocation blocks of 512-byte sectors are used in HFS+ format. It allows file names up to 255 characters and a maximum size of 8 EB. HFS+ prevents file fragmentation by continuously scanning for unoccupied space big enough to hold a file that needs to be written.
Files may need to be entirely rebuilt when file sizes grow. Finally, on-the-fly defragmentation has been supported by Mac OS X since version 10.3. It is activated when a file is divided into more than eight sections and other activity/access preconditions are not met. Access control, compression, and encryption are all supported by the HFS+ file system.
HFS Plus lacks several characteristics common to current file systems like ZFS and NTFS. The most often noted missing functionality is data checksums.
In addition to checksumming, HFS+ lacks the following capabilities of current file systems:
- Nanosecond timestamps
- Simultaneous access (that is, more than one process can access the filesystem at the same time)
- Sparse file assistance
- Stronger use of Hard links in macOS is implemented as tiny files kept in a specific hidden directory (in other filesystems, there are generally numerous directory entries referring to the same data blocks).
- Features like file system permissions and hard links had to be retrofitted when Apple switched to Mac OS X since HFS Plus was not intended for Unix-like platforms.
Part 6. How To Read the HFS+ File System on Windows
Unfortunately, Windows is not natively able to recognize the HFS+ file system. However, some third-party tools you can use to get around this inconvenience and access the MAC formatted drives on Windows, whether HFS+ or APFS. Just check the video tutorial below or go to the complete guide on how to read an HFS+ formatted drive on Windows
Video Tutorial- How to use Mac formatted HFS+ Drive on Windows computer
This article discussed the HSF+ file system and its application here. Also, we talked about its structure, features, and limitation. In general, we showed you how to read HSF+ on widows using free and paid applications. You can contact us if you have any further questions regarding HSF+ files.