Implémentation du système de fichiers ext2 dans Linux

Rémy Card

IBP-Masi 1993/71: Rapport de Recherche Masi / Masi research reports
pages - Novembre/November 1999 - French document.

PostScript : 40 Ko /Kb

Titre / Title: Implémentation du système de fichiers ext2 dans Linux


Résumé : Linux est un système d'exploitation à interface de type Unix fonctionnant sur PC 386. A l'origine, ce système ne supportait qu'un système de fichiers limité compatible avec Minix. Ce papier présente les deux systèmes de fichiers étendus que nous avons concus pour Linux.
Une couche d'indirection a été ajoutée a Linux pour les accès aux fichiers. Cette couche, le système de fichiers virtuel, communique avec les systèmes de fichiers physiques par le biais de pointeurs sur fonctions. Les deux systèmes de fichiers étendus utilisent des stratégies communes : répertoires sous forme arborescente, i-noeuds, accès aux blocs de données par indirection.
Le premier système de fichiers utilise, de plus, une liste chainée pour garder la trâce des blocs et i-noeuds libres. Il gère les répertoires sous formes d'entrées de tailles variables.
Le deuxième système de fichiers est une extension du premier. Il offre des fonctionnalités supplémentaires ainsi que des optimisations permettant d'améliorer les performances. Enfin, il a été concu de facon à inclure facilement de nouvelles extensions comme les listes de contrôle d'accès.

Abstract : Linux is an operating system with a Unix-like interface which runs on PC 386. Initially, Linux included only a limited Minix-compatible filesystem. This paper describes the two extended filesystems that we have designed for Linux.
An indirection layer has been added to Linux to access files.
This layer, called the virtual filesystem, calls physical filesystems via function pointers. The two extended filsystems use common strategies: directory trees, i-nodes, indirect data blocks. The first extended filesystem uses a linked list to keep track of the free blocks and i-nodes. It manages directories as variable length entries. The second extended filesystem is an extension of the first one. It provides additional features and optimizations used to improve performances. It has been designed to allow the easy addition of new extensions like access control lists.


Publications internes Masi 1993 / Masi research reports 1993