TUTORIEL ALGO/METHODES 
Expliquez-moi... Les systèmes de fichiers
À la racine des systèmes d'exploitation, ils définissent les principes d'accès aux fichiers et leur hiérarchisation. (10/11/2005)
Un système de fichiers (filesystem ou FS) est la base de tous les systèmes d'exploitation. Avant même ce dernier, c'est lui qui décidera de l'organisation, voire même la forme physique des données, et de la dénomination des fichiers.

Il n'est pas nécessaire de les connaître pour s'en servir (le système d'exploitation s'en charge très bien déjà), mais disposer de quelques connaissances à leur sujet n'est jamais mauvais pour un développeur.

Le FS présente donc une méthode de stockage et de cataloguage des fichiers, selon des principes qui peuvent varier d'un système à l'autre. C'est lui qui régit la manière dont les données sont chargées, enregistrées, triées, manipulées. Il stipule si un fichier est accessible ou non. Tout support de données dispose d'un système de fichiers, qu'il s'agisse d'un disque dur, d'une mémoire vive, d'un cédérom ou d'une clef USB.

Un FS gère les données par secteurs, le plus souvent de 512 octets, regroupés en unités d'allocation (clusters). Le FS gère ces données par cluster entier (il suffit qu'un seul secteur du cluster soit occupé pour que ce dernier soit considéré comme utilisé). Le nombre de secteurs par cluster est défini par le FS lui-même. Donc, moins le cluster aura de secteurs, moins il y aura de pertes d'espace disque. En contrepartie, plus un cluster aura de secteurs, moins de FS aura d'unités à gérer. Le tout est donc de trouver un FS qui réalise le compromis adéquat pour l'utilisation qu'on en fait - mais le plus souvent, ce choix est imposé par le système d'exploitation.

L'organisation visuelle des fichiers répond à une hiérarchisation, où un dossier comprend un nombre donné de fichiers ou d'autres dossiers, qui eux-mêmes, etc. Physiquement, cependant, un dossier n'est rien moins qu'un type de fichier particulier, dont les métadonnées précisent qu'il est la racine de tel ensemble de fichiers (ou, inversement, les métadonnées des fichiers précisent qu'ils appartiennent à la hiérarchie d'un dossier précis). L'arborescence des fichiers tient donc dans une description décrite au sein d'un type de fichier particulier, les dossiers. Cette description se fait sous la forme d'une structure de données.

Les métas-données associées à un fichier peuvent préciser de nombreuses propriétés selon les FS : type du fichier, taille, secteur de départ, propriétaire du fichier, permissions Posix ou ACL (lecture, écriture, exécution), estampages (de création, de lecture, de modification), indications sécuritaires...

Il y a donc quasiment autant de FS que d'OS. Windows lui-même a vu, au cours de sa carrière, ses capacités de gestions de différents FS augmenter : FAT16 initialement, puis FAT32, NTFS et maintenant NTFS 5. De la même manière, les systèmes alternatifs proposent également leurs FS : UFS pour les systèmes Unix, BSD et consorts (Mac OS X utilise la variante HFS), RaiserFS, ext2 et ext3 pour Linux, JFS, XFS, MFS, HPFS... Les systèmes d'exploitation les plus récents autorisent l'utilisation combinée de plusieurs FS (un par partition). Le FS le plus unanimement reconnu (et donc, le plus facilement partageable en réseau entre plusieurs OS) est FAT16. Les clefs USB, par exemple, l'utilisent la plupart du temps.

  Forum

Réagissez dans les forums de JDN Développeurs

Touts ces systèmes différents sur une poignée de caractéristiques : taille maximale d'un nom de fichier, caractère autorisé dans les noms de dossier, taille maximale d'un chemin d'accès, taille maximale d'un fichier, taille maximale d'un volume. Certains FS utilisent les extensions de fichiers pour classer plus précisément ces derniers, mais comme le montrent les systèmes Mac OS et Unix, ce n'est pas forcément nécessaire pour offrir une reconnaissance de type de fichier. Le plus important tient dans les conventions d'accès au fichier adoptées par le FS.
 
Xavier Borderie, JDN Développeurs
 
Accueil | Haut de page
 
 





Quand achetez-vous le plus en ligne ?
Du lundi au vendredi
Le samedi
Le dimanche

Tous les sondages