Written by
Jenny ZengSummary: This post explains what HFS+ is, and what HFS+ is used for. It also tells you about HFS+ structures and compares HFS+ with Windows file systems such as exFAT and NTFS.
As the default file system on Mac before APFS, you may see or hear of HFS+ often but wonder what it is and how it differs from other file systems like exFAT and NTFS. This post got you covered.
What is HFS+?
HFS+, also referred to as HFS Plus, Mac OS Extended, or HFS Extended, has been the primary journaling file system of the Mac OS X series since the release of Mac OS 8.1 in 1998. You will often see it on Mac named Mac OS Extended (Journaled).
When Apple launched macOS High Sierra in 2017, they replaced HFS+ with APFS (Apple File System), a disk format optimized for SSDs. Nevertheless, HFS+ remains a popular Mac disk format due to its compatibility.
Supported operating systems:
- All Mac operating systems since Mac OS 8.1 (read & write support)
- Linux (read-only)
- Windows (not supported)
You can't read or write to a Mac-formatted external hard drive on a Windows PC because your Mac drive is usually formatted with HFS+ or APFS, which is incompatible with Windows.
To find out if your file system is HFS+ or APFS:
On your Mac, click Launchpad > Other folder, then choose the Disk Utility app. Click View > Show All Devices, then select your drive from the left panel. Now you can see the file system listed under your drive name on the pop-up window.
HFS+ structures
HFS+ uses six main interrelated structures to manage data on the volume.
Volume Header: Store information about the volume, such as creation time and the number of files.
Allocation File (bitmap): Track if an allocation block is used or free.
Catalog File: B-tree that describes the folder and file structure on a volume. It stores the first eight extents of each fork.
Attributes File: B-tree with information of additional fork.
Extents Overflow File: B-tree for the rest of the extents that catalog file doesn't store.
Startup File: For booting of non-Mac computers
What is HFS+ used for?
HFS+ is a file system that is significant for making full use of a storage device and how data is retrieved and saved. It creates a directory that expands as files are added to the drive and records metadata and file names. Without file systems like HFS+, saving a file to a drive is like throwing a rock into the sea, impossible to be found.
Features of HFS+
Better use of Disk Space
HFS+ uses a 32-bit value to address allocation blocks, two times larger than its predecessor HFS (stands for Hierarchical File System). This allows more allocation blocks and a smaller block size, which means less space is wasted.
HFS+ file limits in OS X and macOS:
Maximum number of volumes: limitless
Maximum number of files in a volume: 2.1 billion
Maximum size of a file and a volume: 8 EB
Internationally friendly file names
HFS+ employs UTF-16 to encode files and folders and permits file names up to 255 characters, making it easier to have a descriptive name.
Better data security
Apple added the journaling feature to HFS+ to improve data reliability in Mac OS X 10.2.2, which soon became the default in Mac OS X 10.3. If a system crash and the file system becomes unreadable, the journaling log can help locate files on the drive.
Despite all of its benefits, HFS+ is criticized for the lack of standard features to other file systems such as checksums, snapshotting, and nanosecond timestamp.
exFAT vs. HFS+ vs. NTFS
exFAT (Extended File Allocation Table), developed by Microsoft in 2006, is the best cross-platform file system that can be read or written by macOS and Windows.
The maximum volume size and file size of exFAT is 128 PB, which is smaller than HFS+. exFAT is also vulnerable to file corruption and doesn't have support for metadata like HFS+. Read to know exFAT on Mac.
NTFS (New Technology File System), introduced by Microsoft in 1993, is the default file system of Windows PCs. macOS can only read an NTFS-formatted drive.
NTFS can support volume size and file size up to 8 PB on Windows server 2019 and later, which is less than HFS+. Both HFS+ and NTFS are journaling file systems and support hard links to directories.