Système de fichiers

Un article de Wikipédia, l'encyclopédie libre
Aller à la navigation Aller à la recherche

Le système de fichiers ( en anglais file system ou filesystem ) est une organisation de stockage sur un volume tel qu'un support de données d'un ordinateur . Les fichiers peuvent être enregistrés, lus, modifiés ou supprimés ( CRUD ). Pour l'utilisateur, les noms de fichiers et les adresses de fichiers internes à l'ordinateur doivent être réconciliés. La récupération facile et le stockage sécurisé sont des tâches essentielles d'un système de fichiers. Le système de classification et d'accès tient compte des propriétés de l'appareil et constitue une partie élémentaire d'un système informatique ou d'unsystème d'exploitation .

expression

Le terme "système de fichiers" peut faire référence à l'arborescence de répertoires supérieure entière, la structure de répertoires , d'une part, et aux systèmes de fichiers montables individuellement , tels que les partitions , d'autre part . [1] [2] Puisqu'un système de fichiers est souvent utilisé pour chaque partition ou volume , le terme "système de fichiers" est souvent utilisé comme synonyme de "partition" [3] - en fait, cependant, le système de fichiers est le contenu et la partition n'est qu'un cadre possible dans lequel l'espace de stockage est mis à disposition en tant que volume pour cela.

Plusieurs systèmes de fichiers sont pris en charge sur la plupart des systèmes d'exploitation. Chaque système de fichiers doit résider sur un volume logique adressable séparément , tel qu'une partition ou un disque supplémentaire tel qu'un disque dur. L'initialisation de ce magasin de données logiquement séparé est appelée formatage . Le contenu du système de fichiers est rendu accessible par suspension, intégration ou montage (de l'anglais à mount ) dans le système en cours d'exécution.

histoire

Historiquement, les premières bandes perforées (sur film, plus tard sur papier) et les fichiers sur cartes perforées sont des systèmes de fichiers. Comme le stockage sur bande magnétique, ils forment des systèmes de fichiers linéaires. Le stockage sur tambour et sur disque dur , développé plus tard pour le stockage de masse et l'accès rapide, a ensuite rendu possible l' accès aléatoire pour la première foisà n'importe quelle position dans le système de fichiers des systèmes de fichiers plus complexes. Ces systèmes de fichiers offrent la possibilité d'accéder à un fichier par son nom. Enfin, le concept de systèmes de fichiers a été tellement abstrait que les fichiers sur le réseau et les appareils gérés virtuellement en tant que fichiers sont également accessibles via les systèmes de fichiers. Cela signifie que les programmes d'application peuvent accéder à ces différentes sources de données via une interface uniforme .

Les caractéristiques

Les fichiers d'un système de fichiers ont presque toujours au moins un nom de fichier et des attributs qui fournissent plus d'informations sur le fichier. Les noms de fichiers sont stockés dans des répertoires ; Les répertoires sont généralement des fichiers spéciaux. Un nom de fichier (et donc un fichier) ainsi que les données appartenant au fichier peuvent être trouvés par le système via de tels répertoires. Un système de fichiers forme ainsi un espace de noms . Tous les fichiers (ou objets de type fichier) sont accessibles via une adresse unique (nom de fichier comprenant le chemin ou URI ) dans le système de fichiers. Le nom d'un fichier et d'autres informations associées aux fichiers enregistrés sont enregistrés sousappelées métadonnées .

Il existe des systèmes de fichiers spécialisés pour différents supports de données (tels que les bandes magnétiques , les disques durs , les supports de données optiques ( CD , DVD , ...), la mémoire flash , ...).

Le système de fichiers représente une couche spécifique du système d'exploitation : toutes les couches situées au-dessus (reste du système d'exploitation, applications) peuvent accéder aux fichiers de manière abstraite en utilisant leurs noms en texte brut. Ce n'est qu'avec le système de fichiers que ces informations abstraites sont converties en adresses physiques ( numéro de bloc , piste, secteur, etc.) sur le support de stockage. Dans la couche inférieure, le pilote du système de fichiers communique avec le pilote de périphérique respectif et indirectement également avec le micrologiciel du système de stockage ( lecteur ). Ce dernier effectue d'autres tâches organisationnelles, telles que le remplacement transparent des blocs défectueux par des blocs de réserve.

Organisation du stockage de masse

Les périphériques de stockage de masse tels que les disques durs, les lecteurs de CD-ROM et les lecteurs de disquettes ont généralement une structure en blocs ; H Du point de vue du système d'exploitation, les données ne peuvent être lues ou écrites que sous la forme d'une séquence de blocs de données complets . Un dispositif de stockage présente simplement le support de stockage au système d'exploitation sous la forme d'un grand réseau linéaire de nombreux blocs numérotés (et donc adressables).

Aujourd'hui, un bloc comprend généralement 512 (= 2 9 ) ou 4096 (= 2 12 ) octets, sur un support optique (CD-ROM, DVD-ROM) 2048 (= 2 11 ) octets. Pour des raisons de performances et de gestion, les systèmes d'exploitation modernes combinent plusieurs blocs dans un cluster de taille fixe . Aujourd'hui, les clusters avec huit blocs ou plus sont courants, c'est-à-dire 4096 octets par cluster. La taille du cluster est généralement une puissance de deux (1024, 2048, 4096, 8192, ...).

Un fichier est une section définie de stockage de données qui consiste en un ou plusieurs clusters sur l'appareil. Chaque fichier reçoit également une structure descriptive pouvant contenir la taille réelle, des références aux clusters utilisés et toute autre information telle que le type de fichier , le propriétaire, les droits d'accès (métadonnées).

Il existe plusieurs options pour attribuer des clusters aux fichiers.

  • La référence d'un fichier est constituée du numéro de cluster du cluster initial et du nombre de clusters qui le suivent (physiquement séquentiellement). Inconvénients : lors de l'agrandissement, il peut être nécessaire de déplacer tout le fichier. Cela complique la gestion des fichiers et entraîne de mauvaises performances avec de nombreux fichiers volumineux. Il peut arriver qu'un fichier ne puisse pas être enregistré alors qu'il reste suffisamment d'espace libre sur le support de données .
  • La référence d'un fichier est constituée du premier numéro de grappe. Le numéro de cluster du cluster suivant est stocké dans chaque cluster du fichier. Une liste chaînée en résulte . Inconvénients : Si vous ne voulez pas lire le fichier séquentiellement, mais seulement la fin, par exemple, le système d'exploitation doit encore lire le fichier entier pour trouver la fin.
  • Affectation libre des clusters de fichiers aux clusters suivants à l'aide d'une table sur le périphérique de stockage de masse (exemple : FAT ). Inconvénients : très grande structure de description, lecture ou écriture séquentielle un peu plus lente que l'idéal, car les informations d'affectation ne sont ni regroupées ni disponibles avec les données.
  • Stockage d'un tableau de tuples (extent cluster initial, extent length) dans la structure de description du fichier. Une étendue est une séquence de clusters séquentiels. Ceci est implémenté dans de nombreux systèmes de fichiers aujourd'hui.

Les répertoires contiennent des noms de fichiers et des références aux structures de description respectives. Étant donné que les répertoires sont également des zones de stockage, les fichiers spécialement marqués sont généralement utilisés comme répertoires. La première structure de description peut contenir le répertoire de départ.

Une autre zone séparée sur le support de stockage est utilisée pour comptabiliser les blocs ou clusters déjà occupés et ceux qui sont encore libres. Un outil souvent utilisé à cette fin est la carte de disponibilité des blocs (BAM), dans laquelle un bit de mémoire est créé pour chaque bloc qui indique si le bloc est occupé ou libre. En principe, le BAM contient des informations redondantes et est utilisé à des fins d'efficacité administrative ; en cas de perte des informations qui y sont stockées, le BAM peut être recréé.

En général, le premier bloc est réservé à un soi-disant secteur de démarrage (par exemple Master Boot Record ) qui peut être utilisé pour démarrer le système. Sur un support de stockage avec plusieurs partitions , la table des partitions, qui contient les données d'organisation des partitions , se trouve généralement immédiatement après . Ni le bloc de démarrage ni la table de partition ne font partie du système de fichiers réel.

Chaque partition contient généralement son propre système de fichiers indépendant des données des autres partitions ; les explications ci-dessus se réfèrent aux partitions individuelles qui rejoignent la table de partition l'une après l'autre.

Pour des raisons d'efficacité, c'est-à-dire avant tout pour augmenter les performances /rapidité d'accès, différentes stratégies ont été développées pour agencer ces structures organisationnelles au sein de la zone mémoire disponible. Par exemple, comme il peut y avoir n'importe quel nombre de sous-répertoires dans de nombreux systèmes de fichiers, il est impossible de réserver des emplacements fixes pour ces structures de répertoires. Tout doit être organisé de manière dynamique. Il existe également des systèmes de fichiers comme certains de Commodore, qui placent les structures organisationnelles de base telles que le répertoire racine et BAM au milieu de la zone mémoire (et non au début, comme c'est généralement le cas avec d'autres), de sorte que le chemin que la tête de lecture/écriture doit couvrir de là aux données réelles et le retour est en moyenne réduit. En général, il peut s'agir d'une approche stratégique pour organiser les données réelles et ses données organisationnelles aussi physiquement proches les unes des autres que possible.

Accès au stockage de masse

Un programme accède à la mémoire de masse via le système de fichiers. Des appels système sont prévus à cet effet sous Unix et des systèmes d'exploitation similaires . Les appels système les plus importants sont ici :

  • Appels système pour les répertoires :
    • mkdir, rmdir
      Créer et supprimer un répertoire
    • opendir, closedir
      Ouvrir et fermer un répertoire
    • readdir
      Lecture des entrées du répertoire
    • chdir
      Passer à un autre répertoire
  • Appels système pour les fichiers :
    • creat, unlink
      création et suppression d'un fichier
    • open, close
      Ouvrir et fermer un fichier
    • read, write
      lecture et écriture
    • seek
      Repositionnement du pointeur de lecture/écriture

De plus, le système d'exploitation propose des fonctions de gestion , par exemple pour renommer, copier et déplacer, créer un système de fichiers sur un nouveau support de données, pour des contrôles de cohérence, de compression ou de sauvegarde (selon le système d'exploitation et le système de fichiers).

L'implémentation des appels système d'un programme est souvent implémentée par le noyau d'un système d'exploitation et diffère entre les différents systèmes de fichiers. Le noyau traduit ensuite les accès en opérations de bloc du périphérique de stockage de masse concerné . (Remarque : en fait, cela ne s'applique qu'aux noyaux dits monolithiques . D'autre part, les systèmes construits sur un micro -noyau ou un noyau hybride sont conçus de manière à ce que les opérations du système de fichiers n'aient pas à être effectuées par le noyau lui-même.)

Lorsqu'un programme ouvre un fichier en utilisant open , le nom du fichier est recherché dans le répertoire. Le système d'exploitation détermine les blocs sur le dispositif de stockage de masse à partir des structures de description correspondantes. Si un fichier est trouvé dans le répertoire, le système d'exploitation reçoit également sa structure de description et donc les références aux clusters associés et les utilise pour accéder aux blocs spécifiques.

Le programme peut alors accéder aux clusters du fichier (et donc aux blocs sur le périphérique de stockage de masse) avec read . Si un fichier devient plus volumineux en raison de write , un nouveau cluster est extrait de la liste libre si nécessaire et ajouté à la structure de description du fichier. Les autres appels système peuvent également être traduits en accès cluster ou bloc de cette manière.

Types de systèmes de fichiers

Systèmes de fichiers linéaires

Historiquement, les premiers systèmes de fichiers étaient des systèmes de fichiers linéaires sur bande perforée ou sur cartes perforées, ainsi que les systèmes de bande magnétique encore utilisés aujourd'hui pour la sauvegarde des données.

Systèmes de fichiers hiérarchiques

Les premiers systèmes de fichiers ( CP/M , Apple DOS , Commodore DOS ) n'avaient qu'un seul répertoire, qui contenait alors des références à tous les fichiers de stockage de masse. Au fur et à mesure que la capacité du disque augmentait, il devenait de plus en plus difficile de suivre des centaines et des milliers de fichiers, c'est pourquoi le concept de sous-répertoires a été introduit. Un système de fichiers hiérarchique a été développé pour le système d'exploitation Multics et, après l'arrêt de son développement, a été adopté par AT&T Unix Version 1 de 1971. Cela a jeté les bases de la plupart des systèmes de fichiers modernes, qui résident dans le répertoire racineen plus des fichiers normaux, des références à d'autres répertoires, qui peuvent contenir des sous-répertoires, avec éventuellement d'autres sous-répertoires.

Cela crée une structure de répertoires souvent représentée sous la forme d'une arborescence de répertoires. Le disque dur C: sous Windows , par exemple, contient des fichiers tels que boot.ini et ntldr ainsi que des répertoires tels que programmes , documents et paramètres , etc. Un répertoire tel que Mes Documents peut alors à son tour contenir des sous-répertoires tels que Mes Images ou texte . Les fichiers normaux Brief1.txt et Brief2.txt peuvent ensuite être placés dans des textes , par exemple .

Filesystem.svg

Les répertoires sont également appelés dossiers et, selon le système d'exploitation, sont séparés par une barre oblique inverse "\" (DOS, Windows, TOS ) , une barre oblique " /" ( Unix , Linux , macOS , AmigaOS ) , un point "." ( OpenVMS ) ou côlon":" (anciennes versions de Mac OS) séparés. Puisqu'il existe une hiérarchie de répertoires et de fichiers, on parle de système de fichiers hiérarchique. Le chemin à travers le système de fichiers, spécifié par des noms de répertoires séparés par des séparateurs, est appelé un chemin. Le fichier Brief1.txt est accessible avec

  • C:\Dokumente und Einstellungen\benutzername\Eigene Dateien\Texte\Brief1.txt(Windows 2000/XP)
  • C:\Users\benutzername\Eigene Dokumente\Brief1.txt(Depuis Windows Vista)
  • /Users/benutzername/Texte/Brief1.txt(Mac OS X)
  • Macintosh HD:Dokumente:Texte:Brief 1(Mac OS classique)
  • /home/benutzername/Texte/Brief1.txt(Unix/Linux)
  • Laufwerksname:verzeichnis/unterverzeichnis/Brief1.txt(Amiga OS)
  • DISK$Laufwerksname:[USERS.benutzername]Brief1.TXT;1(OpenVMS)

être accessible. Sous DOS/Windows , il y a des lettres de lecteur suivies de deux-points qui précèdent les chemins dans le système de fichiers. Chaque disque reçoit sa propre lettre, par exemple principalement C: pour la première partition du premier disque dur. Avec Unix , il n'y a pas de lettres de lecteur, juste une seule arborescence de répertoires. Les supports de données individuels y sont montés à certains endroits de l'arborescence ( commande mount ), de sorte que tous les supports de données forment ensemble l'arborescence globale. Les variantes de Windows basées sur Windows NT fonctionnent également en interne avec un tel arbre, mais cet arbre est caché à l'utilisateur.

Sous AmigaOS, il y a un mélange des approches de DOS et d'Unix. Les lecteurs désignés selon la nomenclature Unix sont adressés par deux-points (df0 :, hda1 :, sda2 :). De plus, les désignations logiques de lecteur deux-points peuvent être attribuées indépendamment du volume physiqueLIBS: , conformément à .ASSIGN

Les chemins de répertoire OpenVMS sont très différents des chemins Unix, DOS et Windows. Tout d'abord, OpenVMS nomme le type d'appareil, par ex. par exemple " DISK$" désigne un disque local. Le nom du lecteur (jusqu'à 255 caractères) est ajouté et terminé par deux-points. La partie répertoire est entre crochets. Les sous-répertoires sont séparés par des points, par ex. par exemple " [USERS.Verzeichnis.Verzeichnis2]". Le nom du fichier suit à la fin du chemin, par exemple " Brief1.TXT;1". Sa première partie est un nom descriptif et jusqu'à 39 caractères. Un point est suivi du type de fichier à trois chiffres, similaire à Windows. A la fin, la version du fichier est ajoutée, séparée par un point-virgule ";".

Le terme système de fichiers fait souvent référence non seulement à la structure et à la manière dont les données sont organisées sur un support de données, mais en général à l'ensemble de l'arborescence avec plusieurs systèmes de fichiers différents (disque dur, CD-ROM, ...). Pour être correct, il faudrait parler ici d'un espace de noms formé de divers espaces de noms partiels (les systèmes de fichiers des supports de données montés), mais comme cet espace de noms est très lié aux fichiers, il est souvent uniquement appelé fichier système.

systèmes de fichiers réseau

Les appels système comme open , read etc . peuvent également être transmis sur un réseau à un serveur . Celui-ci accède alors à sa mémoire de masse et renvoie les informations demandées au client .

Étant donné que les mêmes appels système sont utilisés, l'accès du point de vue du programme et de l'utilisateur ne diffère pas de l'accès aux périphériques locaux. C'est ce qu'on appelle l' accès transparent car l'utilisateur ne voit pas la redirection vers l'autre ordinateur, mais semble regarder directement le disque dur de l'ordinateur distant, comme à travers une vitre transparente. Des protocoles réseau spéciaux sont disponibles pour les systèmes de fichiers réseau.

Si un système de fichiers dans un réseau de stockage (SAN), par exemple, est directement accessible par plusieurs systèmes en parallèle, il est appelé système de fichiers global ou cluster . Des mesures supplémentaires doivent être prises pour éviter la perte de données (corruption des données ) due à l'écrasement mutuel. Un serveur de métadonnées est utilisé à cette fin. Tous les systèmes acheminent l'accès aux métadonnées - généralement via un réseau local- au serveur de métadonnées, qui effectue ces opérations telles que l'accès aux répertoires et les affectations de blocs ou de clusters. L'accès réel aux données s'effectue alors via le SAN, comme si le système de fichiers était connecté localement. Étant donné que l'effort supplémentaire ( overhead ) causé par le transfert vers le serveur de métadonnées n'est guère significatif, en particulier avec des fichiers volumineux, une vitesse de transfert similaire à celle d'un système de fichiers directement connecté peut être atteinte.

Une caractéristique spéciale est le protocole WebDAV , qui permet l'accès au système de fichiers aux fichiers distants via HTTP .

Systèmes de fichiers virtuels spéciaux

Le modèle ouvert - lecture peut également être appliqué à des périphériques et des objets qui ne sont normalement pas adressés via des systèmes de fichiers. Cela rend l'accès à ces objets identique à l'accès à des fichiers normaux, ce qui correspond au concept Unix de tout est un fichier et a donc l'avantage de pouvoir utiliser ces données de la même manière que, par exemple, des fichiers de configuration.

Avec les noyaux Linux actuels (y compris la version 2.6), les informations système et de processus peuvent être interrogées et modifiées via le système de fichiers proc virtuel . Par exemple, le fichier virtuel /proc/cpuinfofournit des informations sur le processeur. Il existe quelques pseudo-systèmes de fichiers de ce type sous Linux. Ceux-ci incluent vous. sysfs , usbfs ou devpts ; sous certains BSD, il y a un kernfs . Tous ces systèmes de fichiers ne contiennent que des fichiers purement virtuels avec des informations ou des périphériques mappés sur un "fichier".

Ici, le noyau prétend qu'un fichier existe, car il pourrait exister sur un périphérique de stockage de masse.

En revanche, les fichiers dans ramfs ou tmpfs et les systèmes de fichiers similaires existent réellement, mais ne sont conservés que dans la mémoire principale. Ils sont utilisés pour des raisons de rapidité et pour des raisons logiques et techniques lors de la phase de démarrage .

En plus de Linux, il existe également des disques dits RAM pour divers autres systèmes d'exploitation , avec lesquels un lecteur virtuel complet est implémenté dans la mémoire principale, principalement pour des raisons de vitesse.

les particularités

De nombreux systèmes de fichiers modernes ont généralisé le principe du fichier, de sorte que non seulement une séquence d'octets, un soi-disant flux (de l'anglais flux de données pour flux de données ), mais plusieurs de ces séquences ( flux de données alternatifs ) peuvent être stockées dans un dossier. Cela permet de modifier des parties d'un fichier sans avoir à déplacer les autres parties éventuellement présentes, qui peuvent être très volumineuses.

Le manque de prise en charge de plusieurs flux est problématique. Cela se reflète d'une part dans le fait que les données alternatives sont perdues sans avertissement lors du transfert vers d'autres systèmes de fichiers (ISO 9660, FAT, ext2), et d'autre part dans le fait que pratiquement aucun outil ne les prend en charge, ce qui est pourquoi les données qui y sont stockées ne peuvent pas être consultées sans plus tarder et les antivirus, par exemple, négligent les virus qui y sont stockés.

Le fait que le flux de données principal ne soit pas affecté par les modifications apportées aux autres flux se traduit par des avantages en termes de performances, d'encombrement et de sécurité des données.

Les fichiers clairsemés , les liens physiques et les liens symboliques ne sont pas seulement possibles sous les systèmes de fichiers basés sur des inodes .

Les périphériques de stockage de masse tels que les CD-ROM ou les DVD ont leurs propres systèmes de fichiers qui sont utilisés sur tous les systèmes d'exploitation, en particulier ISO 9660 , pour plus d'informations, voir ci-dessous sous les fonctionnalités spéciales .

Les systèmes de fichiers de la zone Unix connaissent les fichiers de périphériques spéciaux . Leurs noms sont souvent fixés par convention, ils peuvent être renommés à volonté ; par exemple, le clavier, la souris et d'autres interfaces ont également des noms de fichiers spéciaux accessibles avec open , read , write , même la mémoire principale a un nom de fichier, /dev/mem. (La philosophie Unix à ce sujet est la suivante : " Tout est un fichier , et si ce n'est pas le cas, ce devrait être un fichier.")

D'autres systèmes d'exploitation (tels que MS-DOS 2.0 et versions ultérieures) ont également des fichiers de périphérique : COM:, CON:, LPT:et PRN:autres. Ces appareils peuvent être ouverts de la même manière qu'un fichier et lus et écrits via un numéro d'accès (handle) . Naturellement, cependant, ils n'ont pas de pointeur de fichier. Contrairement aux périphériques de bloc (également appelés "lecteurs": A:, B:, C:etc.) , ils ne contiennent aucun fichier, mais se comportent comme des fichiers eux-mêmes - avec certaines restrictions. Ces pseudo-fichiers existent depuis PC DOS 2.0 ou MS-DOS 2.0, qui a été fortement influencé par UNIX. Compte tenu de la spécification du pilote de périphérique DOS [4]il est possible pour l'utilisateur d'écrire ses propres pilotes de périphériques, de les charger à l'aide de la commande DEVICE et de les adresser en utilisant les mêmes noms de pseudo-fichiers. Dans le passé, ces noms de fichiers particuliers étaient souvent à l'origine de problèmes de sécurité, car les noms correspondants n'étaient pas connus de certaines applications et n'étaient donc pas filtrés, mais aussi en partie parce que la protection d'accès aux appareils qui leur étaient associés était insuffisamment réglementée.

En outre, il existe des systèmes de fichiers qui peuvent s'étendre sur plusieurs supports de stockage sous-jacents (« volumes ») (par exemple, les systèmes de fichiers ZFS et Btrfs ) qui permettent déjà de manière inhérente la gestion des versions des fichiers (par exemple, VMS ) ou dont la taille peut être modifiée au moment de l'exécution (par exemple, AIX ).

Certains systèmes de fichiers offrent des fonctions de cryptage , la portée et la sécurité des fonctions varient.

Gestion de dossier associatif

Ceux-ci sont souvent appelés à tort systèmes de fichiers de base de données ou systèmes de fichiers SQL, ce ne sont en fait pas des systèmes de fichiers, mais des informations sur un système de fichiers, qui sont stockées sous une forme améliorée dans une base de données et, pour l'utilisateur, via le système de fichiers virtuel du système d'exploitation représenté.

sécurité

Le système de fichiers ne doit perdre aucune donnée ou l'écraser accidentellement. Deux cas en particulier sont dangereux :

Si plusieurs tâches sont en attente en même temps en mode multitâche, le système de fichiers doit clairement distinguer les actions individuelles afin que rien ne se mélange. Si les tâches adressent également le même fichier, que ce soit uniquement en lecture ou également en écriture, des mécanismes de verrouillage correspondants ( verrous ) sont généralement mis à disposition ou automatiquement activés afin d'éviter les conflits. Accès simultané depuis plusieurs sites, par ex. B. sur un fichier de base de données volumineux sont également le cas normal, de sorte que vous pouvez utiliser non seulement des verrous globaux qui affectent l'ensemble du fichier, mais également des verrous pour des ensembles de données individuels ( enregistrements ).

Si un lecteur écrit actuellement sur un support de stockage et que la tension de fonctionnement tombe en panne à ce moment-là, il y a un risque que non seulement les données réelles ne soient pas écrites complètement, mais surtout que les entrées organisationnelles du répertoire ne soient plus mises à jour correctement. Afin de maintenir ce risque au moins aussi faible que possible, d'une part le matériel essaie de fournir suffisamment de tampons d'énergie (condensateurs dans l'alimentation) pour qu'un processus de travail puisse encore être terminé, d'autre part le logiciel est conçu en de manière à ce que les étapes de travail soient aussi "atomiques" que possible, c'est-à-dire que la période de temps sensible avec des saisies de données incomplètes soit aussi courte que possible. Si cela n'aide pas dans les cas extrêmes, il existe des développements dits plus récentsSystèmes de fichiers de journalisation , qui conservent un journal de chaque étape de travail dans une zone supplémentaire du support de stockage, afin de pouvoir reconstruire ultérieurement ce qui pourrait encore être fait et ce qui ne pouvait pas l'être.

Les mémoires flash ont leurs propres points de vue, en ce qu'elles sont sujettes à l'usure lors de l'effacement et de la réécriture, ce qui, selon le type, ne permet qu'environ 100 000 à 1 000 000 de cycles d'écriture. En règle générale, il n'est pas possible de supprimer des octets individuels individuellement, mais généralement uniquement des blocs entiers (de taille variable selon le modèle) à la fois. Le système de fichiers peut être optimisé ici afin qu'il répartisse les processus d'écriture aussi uniformément que possible sur toute la zone de mémoire de la puce flash et, par exemple, ne commence pas toujours à écrire à l'adresse 0. Mot clé : algorithmes de nivellement d'usure .

Les systèmes de fichiers qui peuvent crypter toutes les données sans que d'autres couches du système d'exploitation aient besoin de le faire servent l'aspect de la sécurité des données contre l'espionnage par des personnes non autorisées.

Une autre source de danger pour l'intégrité des données est les actions d'écriture qui sont effectuées par certains logiciels directement sur des adresses physiques sur le support de stockage, en contournant le système de fichiers. Cela était facilement possible avec les systèmes d'exploitation plus anciens et entraînait des pertes de données fréquentes. Les systèmes d'exploitation plus récents peuvent protéger ces niveaux inférieurs contre les accès non autorisés beaucoup plus efficacement, de sorte que l'accès direct aux adresses de supports physiques n'est plus autorisé avec les droits d'un utilisateur normal. Si certains utilitaires de diagnostic ou de réparation ( outils ) nécessitent un tel accès, ils doivent disposer de privilèges administratifs.

aspects du cycle de vie

Lors de la migration de stocks de fichiers, par exemple en raison d'un remplacement de système, les fichiers doivent souvent être transférés d'un système de fichiers à un autre. Il s'agit généralement d'une entreprise difficile, car de nombreux systèmes de fichiers ne sont pas fonctionnellement compatibles les uns avec les autres, c'est-à-dire. H le système de fichiers de destination ne peut pas accueillir tous les fichiers avec tous les attributs stockés sur le système de fichiers source. Un exemple de ceci serait la migration de fichiers NTFS avec des flux de données alternatifs vers un système de fichiers sans prise en charge de ces flux.

Voir également

liens web

Commons : File Systems  - Collection d'images, de vidéos et de fichiers audio

Linux :

les détails

  1. Aeleen Frisch : Administration du système Unix . O'Reilly Allemagne, 2003, 2 : La philosophie Unix, p. 66, note de bas de page 13 ( texte intégral dans la recherche de livres Google): "Le terme système de fichiers fait donc référence, d'une part, à l'arborescence de répertoires superordonnée du système, qui comprend toutes les partitions du disque dur du système auxquelles les utilisateurs peuvent accéder (comme dans » le système de fichiers Unix '), les fichiers et répertoires sur les partitions de disque individuelles (comme dans "Configuration d'un système de fichiers sur une partition de disque" ou "Montage du système de fichiers utilisateur"). Ce n'est qu'à partir du contexte qu'il devient clair lequel des deux sens du terme est signifié.
  2. Ray Duncan : Power Programming - Se familiariser avec la dernière version d'OS/2 : 1.2 (Partie 2) . Dans : PC Magazines . ruban 9 , non. 7 . Ziff Davis , 10 avril 1990, p. 317 , Qu'est-ce qu'un système de fichiers ? (Anglais, aperçu limité dans Google Recherche de Livres) : « L'expression « système de fichiers » elle-même peut être assez déroutante, cependant, car elle a deux significations communes mais distinctes. Lorsqu'il est question d'un support de stockage physique, la phrase fait référence à la manière dont les données sont formatées, organisées et indexées sur le support. Le système de fichiers est la somme des tables, des répertoires, des fichiers et d'autres structures qui permettent de stocker et de récupérer des données par leur nom. Le système de fichiers inclut également la possibilité de suivre et d'allouer l'espace libre restant sur le support. Le point clé est qu'un système de fichiers physique, souvent appelé « volume », est à la fois cohérent et autosuffisant. Lorsque le système de fichiersest utilisé par rapport au logiciel, il fait référence au module du système d'exploitation qui traduit les requêtes d'un programme d'application (pour ouvrir, créer, lire, écrire ou fermer un répertoire ou un fichier nommé) en requêtes que le périphérique de disque de bas niveau le conducteur peut comprendre. C'est-à-dire que les requêtes logiques orientées fichier sont transformées en une ou plusieurs commandes au pilote de disque pour lire ou écrire des secteurs de disque spécifiques. Le système de fichiers du logiciel effectue cette traduction à l'aide des tables, des structures et des répertoires trouvés dans le système de fichiers physique."
  3. Aeleen Frisch : Administration du système Unix . O'Reilly Allemagne, 2003, 2 : La philosophie Unix, p. 66, note de bas de page 13 ( texte intégral dans Google Book Search) : « Les termes partition et système de fichiers sont parfois utilisés de manière interchangeable. Bien que techniquement, seuls les systèmes de fichiers puissent être montés, des expressions telles que « monter un disque » ou « monter une partition » sont courantes. »
  4. o3one.org