Hierarchical File System Guide, Meaning , Facts, Information and Description
Hierarchical File System (HFS), is a file system developed by Apple Computer for use on computers running Mac OS. Originally designed for use on floppy and hard disks, it can also be found on read-only media such as CD-ROMs.
| Table of contents |
|
2 Design and implementation 3 See also 4 External links |
HFS was introduced in January 1986 as a new file system for Macintosh computers. It superseded the Macintosh File System (MFS) which was a flat file system, used only on the earliest Mac models. Because Macintosh computers use richer data than other commonly available file systems such as FAT used by DOS or the original Unix file system would allow, Apple developed a new more appropriate file system, rather than adopting an existing specification. For example, HFS permits filenames up to 31 characters in length, supports metadata and dual forked (separate data and resource forks per file) files.
While HFS like most other file systems may be seen as a proprietary format, because it was so well documented there are usually solutions available to access HFS formatted disks from most modern operating systems.
In 1998, Apple introduced HFS Plus to address inefficient allocation of disk space in HFS and to add other improvements. HFS is still supported by current versions of Mac OS, but starting with Mac OS X an HFS volume cannot be used for booting.
There are five structures that make up an HFS volume:
The Catalog File B*-tree stores four types of records. Each file is made up of a File Thread Record and a File Record while each directory is made up of a Directory Thread Record and a Directory Record. Files and directories in the Catalog File are located by their unique Catalog Node ID (or CNID).
A File Thread Record stores just the name of the file and the CNID of its parent directory. A File Record stores a variety of metadata about the file including its CNID, the size of the file, three timestamps (when the file was created, last modified, last backed up), the first file extents of the data and resource forks and pointers to the file's first data and resource extent records in the Extent Overflow File. The File Record also stores two 16 byte fields that are used by the Finder to store attributes about the file including things like its creator code, type code, the window the file should appear in and its location within the window.
A Directory Thread Record stores just the name of the directory and the CNID of its parent directory. A Directory Record which stores data like the number of files stored within the directory, the CNID of the directory, three timestamps (when the file was created, last modified, last backed up). Like the File Record, the Directory Record also stores two 16 byte fields for use by the Finder. These store things like the width & height and x & y co-ordinates for the window used to display the contents of the directory, the display mode (icon view, list view, etc) of the window and the position of the window's scroll bar.
This is an Article on Hierarchical File System. Page Contains Information, Facts Details or Explanation Guide About Hierarchical File System History
Design and implementation
The Hierarchical File System divides a volume into logical blocks of 512 bytes. These logical blocks are then grouped together into allocation blocks which can contain one or more logical blocks depending on the total size of the volume. HFS uses a 16 bit value to address allocation blocks, limiting the number of allocation blocks to 65,536.Catalog File
See also
External links
