Hierarchical File System (Apple)

HFS
Developer(s)Apple Computer
Full nameHierarchical File System
IntroducedSeptember 17, 1985; 39 years ago (1985-09-17) with System 2.1
Preceded byMFS
Succeeded byHFS Plus
Partition IDsApple_HFS (Apple Partition Map)
0xAF (MBR) HFS and HFS+
Structures
Directory contentsB-tree
File allocationBitmap
Bad blocksB-tree
Limits
Max volume sizeTB (2 × 10244 bytes)
Max file sizeGB (2 × 10243 bytes)
Max no. of files65535
Max filename length31 characters
Allowed filename
characters
All 8-bit values except :. Discouraged null and non-printing characters.
Features
Dates recordedCreation, modification, backup
Date rangeJanuary 1, 1904 – February 6, 2040
Date resolution1s
ForksOnly 2 (data and resource)
AttributesColor (3 bits, all other flags 1 bit), locked, custom icon, bundle, invisible, alias, system, stationery, inited, no INIT resources, shared, desktop
File system
permissions
AppleShare
Transparent
compression
Yes (third-party); Stacker, AutoDoubler, TimesTwo, Now Compress, StuffIt SpaceSaver, Alysis Software products (SuperDisk!, More Disk Space, The Alysis Disk Expander and eDisk), AutoSqueeze
Transparent
encryption
No
Other
Supported
operating systems
Classic Mac OS, macOS, GS/OS, Linux, Microsoft Windows (through MacDrive or Boot CampIFS drivers)[citation needed]

Hierarchical File System (HFS) is a proprietary file system developed by Apple Inc. for use in computer systems 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. HFS is also referred to as Mac OS Standard (or HFS Standard), while its successor, HFS Plus, is also called Mac OS Extended (or HFS Extended).

With the introduction of Mac OS X 10.6, Apple dropped support for formatting or writing HFS disks and images, which remained supported as read-only volumes until macOS 10.15.[1] Starting with macOS 10.15, HFS disks can no longer be read.

History

Apple introduced HFS in September 1985, specifically to support Apple's first hard disk drive for the Macintosh, replacing the Macintosh File System (MFS), the original file system which had been introduced over a year and a half earlier with the first Macintosh computer. HFS drew heavily upon Apple's first operating system with a hierarchical file system, SOS for the failed Apple III, which also served as the basis for hierarchical file systems on the Apple IIe and Apple Lisa. HFS was developed by Patrick Dirks and Bill Bruffey. It shared a number of design features with MFS that were not available in other file systems of the time (such as DOS's FAT). Files could have multiple forks (normally a data and a resource fork), which allowed the main data of the file to be stored separately from resources such as icons that might need to be localized. Files were referenced with unique file IDs rather than file names, and file names could be up to 31 characters long.

However, MFS had been optimized to be used on very small and slow media, namely floppy disks, so HFS was introduced to overcome some of the performance problems that arrived with the introduction of larger media, notably hard drives. The main concern was the time needed to display the contents of a folder. Under MFS all of the file and directory listing information was stored in a single file, which the system had to search to build a list of the files stored in a particular folder. This worked well with a system with a few hundred kilobytes of storage and perhaps a hundred files, but as the systems grew into megabytes and thousands of files, the performance degraded rapidly.

The solution was to replace MFS's directory structure with one more suitable to larger file systems. HFS replaced the flat table structure with the Catalog File which uses a B-tree structure that could be searched very quickly regardless of size.[2] HFS also redesigned various structures to be able to hold larger numbers, 16-bit integers being replaced by 32-bit almost universally. Oddly, one of the few places this "upsizing" did not take place was the file directory itself, which limits HFS to a total of 65,535 files on each logical disk.

While HFS is a proprietary file system format, it is well-documented; there are usually solutions available to access HFS-formatted disks from most modern operating systems.

Apple introduced HFS out of necessity with its first 20 MB hard disk offering for the Macintosh in September 1985, where it was loaded into RAM from a MFS floppy disk on boot using a patch file ("Hard Disk 20"). However, HFS was not widely introduced until it was included in the 128K ROM that debuted with the Macintosh Plus in January 1986 along with the larger 800 KB floppy disk drive for the Macintosh that also used HFS. The introduction of HFS was the first advancement by Apple to leave a Macintosh computer model behind: the original 128K Macintosh, which lacked sufficient memory to load the HFS code and was promptly discontinued.

In 1998, Apple introduced HFS Plus to address inefficient allocation of disk space in HFS and to add other improvements. HFS Plus is still supported by current versions of Mac OS, but starting with Mac OS X, an HFS volume cannot be used for booting, and beginning with Mac OS X 10.6 (Snow Leopard), HFS volumes are read-only and cannot be created or updated. In macOS Sierra (10.12), Apple's release notes state that "The HFS Standard filesystem is no longer supported."[3] However, read-only HFS Standard support continued to work until the release of macOS 10.15,[4] ending official support for classic HFS Standard after 35 years.[5]

Design

A storage volume is inherently divided into logical blocks of 512 bytes. The Hierarchical File System groups these logical blocks 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,535 (216-1).

Five structures make up an HFS volume:

  1. Logical blocks 0 and 1 of the volume are the Boot Blocks, which contain system startup information.[2] For example, the names of the System and Shell (usually the Finder) files which are loaded at startup.
  2. Logical block 2 contains the Master Directory Block (also known as MDB). This defines a wide variety of data about the volume itself, for example date & time stamps for when the volume was created, the location of the other volume structures such as the Volume Bitmap or the size of logical structures such as allocation blocks. There is also a duplicate of the MDB called the Alternate Master Directory Block (also known as Alternate MDB) located at the opposite end of the volume in the second to last logical block. This is intended mainly for use by disk utilities and is only updated when either the Catalog File or Extents Overflow File grow in size.
  3. Logical block 3 is the starting block of the Volume Bitmap, which keeps track of which allocation blocks are in use and which are free. Each allocation block on the volume is represented by a bit in the map: if the bit is set then the block is in use; if it is clear then the block is free to be used. Since the Volume Bitmap must have a bit to represent each allocation block, its size is determined by the size of the volume itself.[2]
  4. The Extent Overflow File is a B-tree that contains extra extents that record which allocation blocks are allocated to which files, once the initial three extents in the Catalog File are used up. Later versions also added the ability for the Extent Overflow File to store extents that record bad blocks, to prevent the file system from trying to allocate a bad block to a file.
  5. The Catalog File is another B-tree that contains records for all the files and directories stored in the volume. It stores four types of records. Each file consists of a File Thread Record and a File Record while each directory consists 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 directory 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.

Limitations

The Catalog File, which stores all the file and directory records in a single data structure, results in performance problems when the system allows multitasking, as only one program can write to this structure at a time, meaning that many programs may be waiting in queue due to one program "hogging" the system.[6] It is also a serious reliability concern, as damage to this file can destroy the entire file system. This contrasts with other file systems that store file and directory records in separate structures (such as DOS's FAT file system or the Unix File System), where having structure distributed across the disk means that damaging a single directory is generally non-fatal and the data may possibly be re-constructed with data held in the non-damaged portions.

Additionally, the limit of 65,535 allocation blocks resulted in files having a "minimum" size equivalent 1/65,535th the size of the disk. Thus, any given volume, no matter its size, could only store a maximum of 65,535 files. Moreover, any file would be allocated more space than it actually needed, up to the allocation block size. When disks were small, this was of little consequence, because the individual allocation block size was trivial, but as disks started to approach the 1 GB mark, the smallest amount of space that any file could occupy (a single allocation block) became excessively large, wasting significant amounts of disk space. For example, on a 1 GB disk, the allocation block size under HFS is 16 KB, so even a 1 byte file would take up 16 KB of disk space. This situation was less of a problem for users having large files (such as pictures, databases or audio) because these larger files wasted less space as a percentage of their file size. Users with many small files, on the other hand, could lose a copious amount of space due to large allocation block size. This made partitioning disks into smaller logical volumes very appealing for Mac users, because small documents stored on a smaller volume would take up much less space than if they resided on a large partition. The same problem existed in the FAT16 file system.

HFS saves the case of a file that is created or renamed but is case-insensitive in operation.

See also

References

  1. ^ Gagne, Ken (2009-08-31). "Losing legacy data to Snow Leopard". Computerworld. Retrieved 2009-09-07.
  2. ^ a b c "The HFS Primer" (PDF). MWJ. GCSF, Incorporated. 2003-05-25. Archived from the original (PDF) on 2019-12-31.
  3. ^ "What's New in macOS: macOS Sierra 10.12". Apple. Retrieved 25 January 2017.
  4. ^ "How to mount HFS Classic drives on MacOS Catalina and later". Matthew Hughes. 25 July 2020. Retrieved 2 March 2022.
  5. ^ "About the security content of Security Update 2021-005 Mojave". Apple Support. 2022-06-21. Retrieved 2023-05-18.
  6. ^ Giampaolo, Dominic (1999). Practical File System Design with the Be File System (PDF). Morgan Kaufmann. p. 37. ISBN 1-55860-497-9. Archived from the original (PDF) on 2017-02-13. Retrieved 2006-07-13.

Read other articles:

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Bernhard Nocht Institute for Tropical Medicine – news · newspapers · books · scholar · JSTOR (August 2008) (Learn how and when to remove this template message) Bernhard Nocht Institute for Tropical Medicine (Bernhard-Nocht-Institut für Tropenmedizin) (BNITM) i...

 

 

Alfred LandéAlfred Landé tahun 1940Lahir(1888-12-13)13 Desember 1888Elberfeld, Kekaisaran JermanMeninggal30 Oktober 1976(1976-10-30) (umur 87)Columbus, OhioKebangsaanJerman/AmerikaAlmamaterUniversitas MunichDikenal atasPersamaan Born–LandéKarier ilmiahBidangMekanika kuantum Alfred Landé (13 Desember 1888 – 30 Oktober 1976) adalah fisikawan Jerman-Amerika yang dikenal melalui kontribusinya dalam teori kuantum.[1] Ia adalah penemu faktor-g Landé dan penjelasan tentang efe...

 

 

Type of haircut Brush cut Marine A brush cut is a type of haircut in which the hair on the top of the head is cut short in every dimension.[1] The top and the upper portion of the back and sides are cut the same length, generally between 1⁄4 and 1⁄2 inch (6 and 13 mm), following the contour of the head. The hair below the upper portion of the sides and back of the head is tapered short or semi-short with a clipper, in the same manner as a crew cut.[1][2 ...

Chronologies Données clés 2001 2002 2003  2004  2005 2006 2007Décennies :1970 1980 1990  2000  2010 2020 2030Siècles :XIXe XXe  XXIe  XXIIe XXIIIeMillénaires :Ier IIe  IIIe  Chronologies géographiques Afrique Afrique du Sud, Algérie, Angola, Bénin, Botswana, Burkina Faso, Burundi, Cameroun, Cap-Vert, République centrafricaine, Comores, République du Congo, République démocratique du Congo, Côte d'Ivoire, Djibouti, Égypte, �...

 

 

Japan: Culture Template‑class Japan portalThis template is within the scope of WikiProject Japan, a collaborative effort to improve the coverage of Japan-related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the project, participate in relevant discussions, and see lists of open tasks. Current time in Japan: 22:50, April 9, 2024 (JST, Reiwa 6) (Refresh)JapanWikipedia:WikiProject JapanTemplate:WikiProject JapanJapan-related articl...

 

 

Marco Friedl Friedl nel 2017 Nazionalità  Austria Altezza 187 cm Peso 71 kg Calcio Ruolo Difensore Squadra  Werder Brema Carriera Giovanili 2002-2007SV Kirchbichl2007-2008 Kufstein2008-2017 Bayern Monaco Squadre di club1 2015-2018 Bayern Monaco II14 (1)2017-2018 Bayern Monaco1 (0)2018-2019 Werder Brema II1 (0)2018- Werder Brema104 (5) Nazionale 2013 Austria U-152 (2)2013-2014 Austria U-168 (1)2014-2015 Austria U-173 (0)2015-2016 Austria U-182 (0)2016-...

Yuki KatoYuki dalam Jember Fashion Carnaval tahun 2023LahirYuki Anggraini Kato2 April 1995 (umur 29)[1]Malang, Jawa Timur, IndonesiaKebangsaanIndonesiaPekerjaanpemeranmodelpresenterpenyanyiTahun aktif2004—sekarang Yuki Anggraini Kato (lahir 2 April 1995) adalah pemeran, model, presenter, dan penyanyi Indonesia keturunan Jepang. Kehidupan awal Ia merupakan putri pertama dari tiga bersaudara dari pasangan Takeshi Kato yang berdarah Jepang[2] dan Twinawati yang berda...

 

 

Questa voce sull'argomento centri abitati del Rio Grande do Norte è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Santa Cruzcomune Santa Cruz – Veduta LocalizzazioneStato Brasile Stato federato Rio Grande do Norte MesoregioneAgreste Potiguar MicroregioneBorborema Potiguar AmministrazioneSindacoFernanda Costa Bezerra TerritorioCoordinate6°13′37″S 36°01′14″W / 6.226944°S 36.020556°W-6.226944; -36.020556 (Santa C...

 

 

Questa voce sull'argomento stagioni delle società calcistiche italiane è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. Voce principale: Gruppo Rionale Fascista Vincenzo Benini. G.R.F. Vincenzo BeniniSezione CalcioStagione 1938-1939Sport calcio Allenatore Edgardo Bassi Presidente Marino Bonechi Serie C13º posto nel girone E. Retrocede in Prima Divisione. Coppa ItaliaQualificazioni. Maggiori presenzeCa...

Untuk kegunaan lain, lihat Mina (disambiguasi). Peta menunjukan lokasi Mina Mina adalah munisipalitas yang terletak di provinsi Iloilo, Filipina. Pada tahun 2010, munisipalitas ini memiliki populasi sebesar 20.320 jiwa atau 4.065 rumah tangga. Pembagian wilayah Secara administratif Mina terbagi menjadi 22 barangay, yaitu: Abat Agmanaphao Amiroy Badiangan Bangac Cabalabaguan Capul-an Dala Guibuangan Janipa-an West Janipa-an East Mina East (Pob.) Mina West (Pob.) Nasirum Naumuan Singay Talibong...

 

 

Massimo GargiaMassimo Gargia en 2010.BiographieNaissance 20 août 1940 (83 ans)Naples, ItalieNationalité italienneConjoint Francine Crescent (1991-2008)modifier - modifier le code - modifier Wikidata Massimo Gargia, né le 20 août 1940 à Naples, est un organisateur d'évènements italien. Personnalité de la jet set, il travaille dans les relations publiques. Biographie Massimo Gargia est issu d’une famille napolitaine, son père est ingénieur. À 18 ans, il devient un gigolo monda...

 

 

Stasiun Hakusan-Nagataki白山長滝駅Stasiun Hakusan-Nagataki pada Mei 2015LokasiShiratori-cho Nagataki, Gujō-shi, Gifu-ken 501-5104JepangKoordinat35°55′10.78″N 136°49′56.86″E / 35.9196611°N 136.8324611°E / 35.9196611; 136.8324611Koordinat: 35°55′10.78″N 136°49′56.86″E / 35.9196611°N 136.8324611°E / 35.9196611; 136.8324611Operator Nagaragawa RailwayJalur■ Jalur Etsumi-NanLetak70.9 km dari Mino-ŌtaJumlah peron1 peron...

British TV series or programme 60 Minute MakeoverAlso known asPeter Andre's 60 Minute Makeover (2013–2018)Presented by Claire Sweeney (2004–2006) Terri Dwyer (2007–2009) Catherine Gee (2011–2012) Peter Andre (2013–2014, 2018) Narrated by Alex Hall (2009–2010) Lee Williams (2011–2012) Catherine Gee (2012) Country of originUnited KingdomOriginal languageEnglishNo. of series12No. of episodes639ProductionRunning time60 minutes (including adverts)Production companyShiver Productions...

 

 

Social process by which people arrive at extreme views Part of a series onTerrorism Definitions History Incidents By ideology Anarchist Communist Left-wing/Far-left Narcotics-driven Nationalist Right-wing/Far-right Religious Buddhist Christian (Mormon) Hindu Islamic (Salafi-Wahhabi) Jewish Sikh Special-interest / Single-issue Suffragette Anti-abortion Green/Ecological Misogynist Related topics Violent extremism Ethnic violence Militia movement Resistance movement Structure Financing ...

 

 

Combined landmasses of Europe and Asia For other uses, see Eurasia (disambiguation). EurasiaArea55,000,000 km2 (21,000,000 sq mi)Population5.4 billion (As of 2023)[1][2]Population density93/km2 (240/sq mi)DemonymEurasianCountries~93 countriesDependencies9 dependenciesTime zonesUTC−1 to UTC+12Part ofAfro-Eurasia Eurasia (/jʊəˈreɪʒə/ yoor-AY-zhə, also UK: /-ʃə/ -⁠shə) is the largest continental area on Earth, comprising all of Europe and Asi...

Disambiguazione – Se stai cercando la terrazza intesa come tecnica di coltivazione, vedi Terrazzamento. Disambiguazione – Se stai cercando il termine araldico, vedi Terrazza (araldica). Veduta della Terrazza Mascagni a Livorno: sullo sfondo il Fanale del porto labronico La terrazza è uno spazio architettonico aperto, agibile o anche abitabile accessorio a un edificio. Indice 1 Tipologie 2 Storia 3 Voci correlate 4 Altri progetti 5 Collegamenti esterni Tipologie Per terrazza si intende i...

 

 

French footballer (born 1995) Mike Maignan Maignan with AC Milan in 2022Personal informationFull name Mike Peterson MaignanDate of birth (1995-07-03) 3 July 1995 (age 28)Place of birth Cayenne, French GuianaHeight 1.91 m (6 ft 3 in)[1]Position(s) GoalkeeperTeam informationCurrent team AC MilanNumber 16Youth career2003–2009 Villiers le Bel JS2009–2012 Paris Saint-GermainSenior career*Years Team Apps (Gls)2012–2015 Paris Saint-Germain B 42 (0)2015–2017 Lille ...

 

 

Questa voce sull'argomento calciatori francesi è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. Sylvain KastendeuchNazionalità Francia Altezza180 cm Peso72 kg Calcio RuoloDifensore CarrieraSquadre di club1 1982-1984 Metz19 (0)1984-1985→  Red Star34 (3)1985-1990 Metz188 (4)1990-1993 Saint-Étienne105 (13)1993-1994 Tolosa33 (2)1994-2001 Metz232 (9) Nazionale 1987-1989...

Махапраджапати получает монашеское посвящение от Будды и становится первой в мире бхикшуни. Бхи́кшуни или бхиккхуни (санскр. bhikṣuṇī, пали bhikkhunī, в буквальном переводе — «нищая», «попрошайка») — полностью посвящённая монахиня в буддизме. Буддийские монахини, как и ...

 

 

Not to be confused with Fifty Big Ones. 1976 album by the Beach Boys 15 Big OnesStudio album by the Beach BoysReleasedJuly 5, 1976 (1976-07-05)Recorded1974 – May 15, 1976 (except Susie Cincinnati, 1969)StudioBrother (Santa Monica), Beach Boys (Los Angeles) and Caribou Ranch (Nederland)GenreRockR&BpopLength39:20LabelBrother/RepriseProducerBrian Wilsonthe Beach Boys chronology 20 Golden Greats(1976) 15 Big Ones(1976) The Beach Boys Love You(1977) Singles from 15 Big One...