Hierarchical File System
Le Hierarchical File System (HFS), est un système de fichiers propriétaire développé par Apple pour le système d'exploitation Mac OS. Conçu à l'origine pour les disquettes et disques durs, il peut également être utilisé sur des médias en lecture seule, comme les CD-ROM. HFS est généralement désigné par « Mac OS Standard », et son successeur HFS+ par « Mac OS étendu ». Le Hierarchical File System, ou HFS, est aussi un autre système de fichiers utilisé dans z/OS, un système d’exploitation IBM pour mainframe. HistoireHFS a été introduit par Apple en septembre 1985 pour remplacer Macintosh File System (MFS), le système de fichiers d'origine qui a été présenté l'année précédente avec l'ordinateur Macintosh. Développé par Patrick Dirks et Bill Bruffey, HFS partage un certain nombre de caractéristiques de conception avec MFS qui n'étaient pas disponibles dans d'autres systèmes de fichier de l'époque (tels que DOS et FAT). Les fichiers peuvent avoir plusieurs forks, ce qui permet au code source d’être stocké séparément des ressources (en) telles que les icônes pour les rendre faciles à localiser (adapter à divers pays). Les dossiers ont été référencés avec des identifiants uniques de fichier plutôt que des noms de fichier, et les noms de fichiers peuvent être long de 255 caractères (bien que le Finder supporte seulement 31 caractères). MFS a été optimisé pour être utilisé sur de très petits et lents médias, comme les disquettes. HFS a été introduit de manière à surmonter certains des problèmes de performance liés à l'introduction de plus grands médias, et notamment les disques durs. La principale préoccupation est le temps nécessaire pour afficher le contenu d'un dossier. Sous MFS, toutes les informations des fichiers et répertoires ont été stockées dans un fichier unique, qui, pour le système de recherche, construisait une liste des fichiers stockés dans un dossier particulier. Cela a bien fonctionné avec un système de quelques centaines de kilooctets de stockage et une centaine de dossiers, mais comme les systèmes utilisaient des mégaoctets et des milliers de fichiers, les performances se dégradaient rapidement. Pour s'adapter aux grands systèmes de fichiers, HFS remplace la table des fichiers par le Catalog File, qui utilise une structure arbre B et qui permet d'effectuer des recherches très rapidement quelle que soit la taille de l'arbre. HFS a aussi remodelé diverses structures et, pour pouvoir organiser un plus grand nombre de fichiers, utilise des entiers 32 bits (au lieu de 16 bits). Mais, comme pour MFS, le Catalog File lui-même limite HFS au stockage de 65 535 fichiers maximum. Alors que HFS est un système de fichiers propriétaire, il est fait de telle sorte qu'il existe des solutions d’utilisation des disques formatés HFS avec les systèmes d'exploitation plus modernes. En 1998, Apple publie HFS+ à cause de la répartition inefficace de l'espace disque en HFS. Ce nouveau système de fichiers apporte d'autres améliorations. Bien que dès lors un volume HFS ne puisse plus être utilisé pour le boot (démarrage), les volumes HFS restent lisibles par les versions suivantes de Mac OS, jusque Mojave y compris. ConceptionLe Hierarchical File System divise un volume logique en blocs de 512 octets. Ces blocs logiques sont ensuite regroupés dans des blocs d'allocation, qui peuvent contenir un ou plusieurs blocs logiques en fonction de la taille totale. HFS utilise une valeur de 16 bits pour l'attribution d'adresse de blocs, ce qui limite le nombre de blocs d'allocation à 65 536. Il y a cinq structures qui forment un volume de HFS :
ProblèmesLe catalogue de fichier, qui stocke tous les fichiers et répertoires en une seule structure de données, a des problèmes de performances. Lorsque le système permet le multitâche, un seul programme peut écrire sur un fichier à la fois, ce qui signifie que de nombreux programmes peuvent se retrouver dans la file d'attente à cause d’un « arc » dans le système. Dans ce cas, les dommages à un fichier peuvent détruire tout le système de fichiers. Cela contraste avec les autres systèmes de fichiers qui stockent les fichiers et les dossiers dans des structures distinctes (comme Microsoft et FAT ou l’Unix File System), où la structure est répartie dans l'ensemble du disque. Ce qui signifie qu'endommager un seul répertoire est généralement non-dangereux et les données peuvent éventuellement être récupérées dans la partie non endommagée. En outre, la limite de 65 535 allocations de blocs de fichiers (clusters) abouti à des blocs minimum de taille équivalente à 1/65 535e de la taille du disque, même pour des fichiers ne contenant que quelques octets. Quand les disques étaient petits, cela était peu important, car la taille des blocs d'allocation individuelle était réduite, mais dès que les disques ont commencé à approcher le 1 Gio, cette taille de bloc minimum est devenu trop grande, gaspillant beaucoup d'espace disque. Par exemple, sur un disque de 1 Gio, la taille des blocs d'allocation avec HFS est de 16 kio, même pour un fichier de 1 octet. Cette situation est moins problématique pour les utilisateurs ayant de gros fichiers (comme les images, bases de données ou audio), qui gaspillent moins d'espace. Les utilisateurs disposant d'un grand nombre de petits fichiers, d'autre part, pourraient perdre une abondante quantité d'espace due à la taille des blocs d'allocation. Un découpage disque réalisé en petits volumes logiques (partitions) est très attrayant pour les utilisateurs de Mac, parce que les petits documents stockés sur un plus petit volume prendraient beaucoup moins de place que sur une grande partition. Le même problème existe dans le FAT16. L'heure de création ou de modification est l'heure local. Ce qui a posé un problème lors du passage en HFS+ qui stocke l'heure GMT. |
Portal di Ensiklopedia Dunia