Système de fichiers virtuel

Un article de Wikipédia, l'encyclopédie libre.

Dans un système Linux, le système de fichiers virtuel ou VFS ( pour virtual filesystem ou virtual filesystem switch ) est une couche logicielle du noyau Linux permettant de faire coexister plusieurs système de fichiers ensemble de façon transparente pour le programme.

Sommaire

[modifier] Rôle du système de fichiers virtuel

Le système de fichiers virtuel de linux propose une interface d'appels systèmes commune aux programmes pour les différentes opérations sur les fichiers.

Le noyau alors s'occupe de faire la redirection de l'appel système en une routine spécifique au système de fichier ciblé pour l'opération demandée.

[modifier] Fonctionnement du système de fichiers virtuel

Pour proposer une interface commune et donc proposer un ensemble d'appels systèmes commun pour l'accès au fichiers pour différent type de système de fichier, le noyau propose un modèle de fichier commun très proche des fichiers d'un système de fichier natif linux tel que ext2. Ce modèle est placé en mémoire, lorsque cela est nécessaire, sous forme de 4 objets (structures et fonctions pour les modifier) que sont l'objet superblock, l'objet fichier, l'objet dentry et l'objet inode

[modifier] L'objet superblock

Cette structure contient des informations portant sur un système de fichiers monté telles que le nombre et la taille des blocs, le type de système de fichiers, l'identifiant du périphérique sur lequel il est monté, etc. Elle contient également un champ contenant le pointeur qui pointe sur une structure contenant les fonctions du superblock.

[modifier] L'objet inode

Cette structure contient essentiellement les informations contenues dans les véritables inodes du système de fichiers, c'est-à-dire taille, attribut de l'inode, nombre de liens...etc.

[modifier] L'objet fichier

[modifier] L'objet dentry

[modifier] Accès aux fichiers

L'accès aux fichiers est effectué par VFS grâce aux inodes. Quand le chemin d'un fichier à manipuler est transmis à VFS par un programme utilisateur, VFS parcourt alors le disque, élément par élément ; c'est-à-dire les fichiers et les répertoires. Le parours s'arrête quand VFS trouve l'inode du dernier élément à manipuler. A ce moment, VFS peut alors manipuler les données du programme utilisateur. La force de VFS tient au fait qu'il sait, en fonction de la partition qu'il parcourt, dialoguer avec un système de fichiers FAT, NTFS, ext2, ext3, ReiserFS ou XFS.

[modifier] Voir aussi