Les systèmes de fichiers Les systèmes de fichiers Les problèmes
Transcription
Les systèmes de fichiers Les systèmes de fichiers Les problèmes
Université de Reims – Champagne Ardenne Université de Reims – Champagne Ardenne Les systèmes de fichiers Les systèmes de fichiers I. Généralités F. Nolot Licence d'informatique 2003-2004 1 Université de Reims Champagne-Ardenne F. Nolot 2 Université de Reims Champagne-Ardenne Les problèmes Les objectifs Les données crées par un processus sont limités par son espace virtuel d'adressage Enregistrer une très grande quantité d'informations Conserver ces informations après la fin du processus qui les utilise Une fois le processus terminé, perte des informations Plusieurs processus doivent pouvoir accéder simultanément à une information Lors d'accès concurrents, les informations doivent pouvoir être consultées indépendamment des processus F. Nolot Licence d'informatique 2003-2004 Licence d'informatique 2003-2004 La solution classique : les fichiers 3 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 4 Université de Reims – Champagne Ardenne Les types de fichiers existant Fichiers ordinaires : contiennent les informations Les systèmes de fichiers Répertoires : ce sont des fichiers système qui conservent la structure du système de fichiers Fichiers spéciaux caractères : permet de modéliser les périphériques d'E/S II. Les fichiers ordinaires Fichiers spéciaux bloc : permet de modéliser les disques F. Nolot Licence d'informatique 2003-2004 5 F. Nolot Licence d'informatique 2003-2004 6 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Les fichiers ordinaires Leur type ? Soit des fichiers ASCII Déterminé soit par une extension lignes de textes MS-DOS : les exécutables ont l'extension .exe ou .com Possibilité de les lire et de les imprimer directement Soit par un attribut (MAC-OS) Soit des fichiers binaires Soit il n'est pas défini (UNIX), seul l'application utilise (et reconnaît) l'extension Une suite d'octets incompréhensible si on ne connaît pas le format F. Nolot Licence d'informatique 2003-2004 7 Université de Reims Champagne-Ardenne F. Nolot 8 Université de Reims Champagne-Ardenne Exemple de types de fichiers Type de fichier Extension Les accès aux fichiers Fonction Exécutable Exe, com, ou aucun Programme en langage machine prêt à etre exécuté Objet obj, o Compilé, langage machine non linké Code source c, cc, pas, java, asm Code source en divers langage Traitement par lots bat, sh Bibliothèque lib, a Impression ou vue ps, dvi, pdf, jpg, bmp Multimédia mpeg, mpg, mp3 Archive tgz, tar, zip, rar, bz2 F. Nolot Licence d'informatique 2003-2004 Accès séquentiel lecture des octets du fichier dans l'ordre, à partir du début (ex : une bande magnétique) Accès par rapport à leur position sur le support Ensemble de commandes de l'interpréteur de commandes Bibliothèque de routine pour les programmeurs Fichiers dans un format d'impression ou de visualisation Fichiers contenant de informations audio et/ou vidéo Fichiers groupés dans un seul fichier pouvant etre compressé Licence d'informatique 2003-2004 Accès aléatoire Possibilité d'accès direct à n'importe quel fichier possibilité de se positionner à un endroit donné d'un fichier 9 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 10 Université de Reims – Champagne Ardenne Les attributs des fichiers Informations complémentaires concernant un fichier Les systèmes de fichiers Le nombre d'attribut varie en fonction du système Exemple : indicateurs sur les possibilités de lecture, écriture et exécution III. Les répertoires Le créateur, le propriétaire Fichier ASCII ou binaire ... L'heure et la date de création F. Nolot Licence d'informatique 2003-2004 11 F. Nolot Licence d'informatique 2003-2004 12 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Pourquoi les répertoires ? Représentation d'une hiérarchie Pour hiérarchiser les fichiers / Gérer les fichiers de plusieurs utilisateurs usr Pour pouvoir organiser ses données Plusieurs utilisateurs peuvent avoir des fichiers ayant le même nom lib home bin A B bin C cours ls sh doc Chemin d'accès absolu : commence par le séparateur (/home/C/cours) Chemin relatif : Si /home est le répertoire courant, l'accès à cours se fait par C/cours . représente le répertoire courant et .. le répertoire parent F. Nolot Licence d'informatique 2003-2004 13 Université de Reims – Champagne Ardenne F. Nolot Licence d'informatique 2003-2004 14 Université de Reims – Champagne Ardenne Les systèmes de fichiers Les systèmes de fichiers IV. L'implantation F. Nolot Licence d'informatique 2003-2004 15 Université de Reims Champagne-Ardenne A. Le disque F. Nolot Licence d'informatique 2003-2004 16 Université de Reims Champagne-Ardenne Organisation du disque Mémorisation des blocs libres 2 méthodes sont utilisées Les fichiers sont stockés de manière contiguë ou pas 1ère solution : perte d'espace libre et temps pour compresser trop long C'est donc la 2 ème Liste chaînée de blocs contenant chacun des numéros de blocs libres solution la plus souvent utilisée Table de bits : pour un disque de n blocs, une table de n bits est utilisée. Un 1 indique que le bloc est libre et 0 qu'il est occupé (ou l'inverse) Problème : utilisation de bloc de taille fixe donc quelle taille utiliser ? Un secteur, une piste, un cylindre ou la taille d'une page pour les systèmes paginés ? La deuxième solution utilise généralement moins de place Si le bloc est trop grand, gaspillage Si le bloc est trop petit, un grand de nombre de blocs est à gérer pour un fichier F. Nolot Licence d'informatique 2003-2004 17 F. Nolot Licence d'informatique 2003-2004 18 Université de Reims – Champagne Ardenne Université de Reims Champagne-Ardenne Organisation Systèmes de fichiers enregistrés sur le disque Les systèmes de fichiers Chaque partition du disque possède un système de fichier qui peut être différent Au secteur 0 du disque se trouve la MBR (Master Boot Record) puis la table des partitions B. Les fichiers Premier bloc des partitions est le bloc de boot Le suivant : le superbloc qui contient les informations sur le type de système de fichiers de la partition F. Nolot Licence d'informatique 2003-2004 19 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 20 Université de Reims Champagne-Ardenne Allocation contiguë Allocation contiguë (2) Chaque fichier est stocké dans une suite de blocs consécutifs Avantages : Simple à mettre en place Exemple : bloc de 2Ko, 5 fichiers de taille respective 16Ko, 12Ko, 6Ko, 6Ko et 4Ko Excellentes performances car un seul déplacement au début du fichier Inconvénient : la fragmentation Exemple : on supprime les fichiers B et D F. Nolot Licence d'informatique 2003-2004 21 Université de Reims Champagne-Ardenne F. Nolot Allocation par liste chaînée et FAT Chaque fichier est considéré comme une liste chaînée de blocs du disque Stockage du pointeur de chaque bloc dans une table en mémoire appelée FAT (File Allocation Table) B A 0 1 2 3 0 1 2 3 4 5 4 6 7 9 2 0 8 1 3 5 Avantage : un bloc physique est intégralement disponible pour des données Inconvénient : la place occupée par la table peut être considérable Plus de fragmentation Exemple : un disque de 20Go avec des blocs de 2Ko, soit environ 10 millions d'entrées dans la table. Si chaque entrée n'est que de 2 octets, il faut donc au total près de 20 Mo Par contre, la lecture d'un fichier devient plus complexe et plus lente (multiples déplacements) L'adresse du bloc de fichier suivant entraîne des tailles différentes des blocs de données du fichier F. Nolot 22 Université de Reims Champagne-Ardenne Allocation par liste chaînée Bloc physique Licence d'informatique 2003-2004 Licence d'informatique 2003-2004 23 F. Nolot Licence d'informatique 2003-2004 24 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Exemple d'une FAT Les i-nodes B A Bloc physique 0 1 2 3 0 1 2 3 4 5 4 6 7 9 2 0 8 1 3 5 9 8 7 6 5 4 3 2 1 0 F. Nolot -1 1 9 7 -1 6 5 0 3 8 A chaque fichier, on associe une structure de données appelée i-node qui contient les attributs les adresses du disque des blocs du fichier Avantage : on ne charge en mémoire que les nodes des fichiers ouverts. i- Début du fichier A Début du fichier B Licence d'informatique 2003-2004 25 Université de Reims – Champagne Ardenne F. Nolot Licence d'informatique 2003-2004 26 Université de Reims Champagne-Ardenne Les entrées des répertoires A chaque fichier correspond une entrée dans un répertoire Les systèmes de fichiers Elle fournit les informations pour trouver le fichier sur le disque Soit l'adresse disque du fichier entier Soit le numéro du 1er bloc du fichier C. Les répertoires Soit le numéro de l'i-node correspondant Ainsi que les attributs sont stockés Soit dans l'entrée du répertoire qui regroupe le nom du fichier, les attributs et l'adresses disques Soit dans l'i-node du fichier. Dans ce cas, la taille de l'entrée est réduite au nom du fichier et au numéro de l'i-node F. Nolot Licence d'informatique 2003-2004 27 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 28 Université de Reims – Champagne Ardenne Gestion des noms de fichiers longs Généralement, on fixe une taille maximale (255 caractères) Les systèmes de fichiers Problème : beaucoup d'espace perdu 2 solutions : Chaque entrée d'un répertoire contient la longueur de l'entrée du fichier, ses attributs ( de longueur fixe), son nom de fichier (de longueur variable) D. Les liens Problème : quand un fichier est supprimé, un trou se forme dans l'entrée du répertoire Chaque entrée de répertoire est de longueur fixe, tous les noms de fichier se trouvant à la fin du répertoire F. Nolot Licence d'informatique 2003-2004 29 F. Nolot Licence d'informatique 2003-2004 30 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Les liens physiques ou matériels (UNIX) Les liens physiques ou matériels (UNIX) Exemple : un fichier toto et deux liens tata et titi vers toto Ajout d'un nouveau nom dans le système de fichiers, qui pointe vers le même i-node que le nom original Permet d'avoir plusieurs noms pour un même fichier L'i-node contient un compteur de lien Initialisé à 1 lors de la création du fichier original F. Nolot Incrémenté à chaque création d'un lien vers ce fichier Licence d'informatique 2003-2004 31 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 32 Université de Reims Champagne-Ardenne Les liens symboliques (UNIX) Liens physiques vs liens symboliques Fichier texte qui contient le chemin d'accès et le nom du fichier vers lequel il pointe Liens physiques : conservation du propriétaire Si le propriétaire efface le fichier, celui-ci appartient toujours au propriétaire et donc s'il existe des quotas, cela peut poser des problèmes Le lien est marqué par un type spécial Liens symboliques : pas ce problème car seul le propriétaire possède un pointeur sur l'i-node. Par contre, si le propriétaire supprime ce fichier, le lien devient invalide Consommation de temps CPU supplémentaire car de nombreux accès disque afin de lire le chemin d'accès puis le fichier pointé Problème commun : un fichier peut avoir plusieurs chemin d'accès possible. Lors d'une sauvegarde, un fichier peut donc être copié plusieurs fois. F. Nolot Licence d'informatique 2003-2004 33 Université de Reims – Champagne Ardenne F. Nolot Licence d'informatique 2003-2004 34 Université de Reims Champagne-Ardenne Manipulation des flux Ouverture d'un flux Les systèmes de fichiers FILE *fopen(char *nom, char *mode) E. Les commandes en langage C F. Nolot Licence d'informatique 2003-2004 35 F. Nolot Mode est égale à r : lecture seule, le fichier doit exister w : écriture seule. Si le fichier existe, il est écrasé sinon il est créé a : écriture seule en fin de fichier. Si le fichier existe, il n'est pas modifié sinon il est créé r+ : lecture et écriture. Si le fichier existe, les lectures et écritures commenceront au début et écraseront les données présentes w+ : lecture et écriture. Si le fichier existe, il est écrasé, sinon il est créé a+ : ajout et lecture. Lecture commence au début et les ajouts à la fin Licence d'informatique 2003-2004 36 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Manipulation des flux (2) Manipulation des flux (3) Déplacement dans un flux Fermeture d'un flux int fclose (FILE *flux) int fseek (FILE *flux, long position, int depart) Retourne 0 en cas de succès et EOF en cas d'échec depart a pour valeur : Ecriture dans un flux SEEK_SET : on mesure la position depuis le début du fichier int fwrite( const void *bloc, size_t taille_element, size_t nb_element, FILE *flux) Retourne le nombre d'éléments correctement écrits Lecture dans un flux int fread( const void *bloc, size_t taille_element, size_t nb_element, FILE *flux) SEEK_CUR : on mesure la position depuis la position courante SEEK_END : on mesure la position depuis la fin du fichier Retourne 0 en cas de succès et -1 en cas d'erreur Retour au début du flux void rewind (FILE *fp) Retourne le nombre d'éléments correctement lus F. Nolot Licence d'informatique 2003-2004 37 Université de Reims – Champagne Ardenne F. Nolot Licence d'informatique 2003-2004 38 Université de Reims Champagne-Ardenne La sauvegarde Les supports utilisés pour le stockage ne sont pas fiable à 100% Les systèmes de fichiers Plusieurs moyens de sauvegarde existent La sauvegarde totale V. La fiabilité On copie la totalité des données La sauvegarde incrémentale Au lieu de toujours faire une sauvegarde totale, sauvegarder régulièrement que les données modifiées F. Nolot Licence d'informatique 2003-2004 39 Université de Reims Champagne-Ardenne F. Nolot 40 Université de Reims Champagne-Ardenne La cohérence Cohérence basée sur les blocs Si une panne arrive lorsque le système est en train de faire des modifications sur les blocs du disque Fabrication de 2 tables L'une contient le nombre de fois qu'un bloc est référencé dans un fichier Que se passe-t-il si ces blocs sont des blocs d'i-nodes, de répertoires ou de blocs libres L'autre contient le nombre de fois qu'un bloc est référencé dans la liste des blocs libres La vérification de la cohérence est basée Une fois les tables remplies, 4 situations sont possibles Soit sur les blocs Soit sur les fichiers F. Nolot Licence d'informatique 2003-2004 Licence d'informatique 2003-2004 41 F. Nolot Licence d'informatique 2003-2004 42 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Cohérence basée sur les blocs (2) Cohérence basée sur les blocs (3) Système cohérent Système incohérent Le bloc 5 est manquant. Il sera considéré comme libre Indice des blocs 0 1 2 3 4 5 6 7 0 0 1 1 1 0 0 1 1 1 0 0 0 1 1 0 8 9 10 11 12 13 14 15 16 17 18 Bloc utilisé 0 0 1 Indice des blocs 1 0 1 1 1 0 0 0 0 1 2 3 4 5 6 7 0 1 0 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 1 0 Bloc libre 1 1 0 8 9 10 11 12 13 14 15 16 17 18 Bloc utilisé 0 0 1 1 0 1 1 1 0 0 0 0 1 0 0 0 1 1 1 Bloc libre F. Nolot Licence d'informatique 2003-2004 43 Université de Reims Champagne-Ardenne F. Nolot 1 1 0 Licence d'informatique 2003-2004 44 Université de Reims Champagne-Ardenne Cohérence basée sur les blocs (4) Cohérence basée sur les blocs (5) Système incohérent Système incohérent Le bloc 5 est dupliqué dans l'espace des blocs libres Le bloc 5 appartient à 2 fichiers. La solution : allouer un bloc libre, y copier le bloc dupliquer et le copier dans un des fichiers Indice des blocs 0 1 2 3 4 5 6 7 8 Indice des blocs 9 10 11 12 13 14 15 16 17 18 0 1 2 3 4 5 6 7 0 0 1 1 1 2 0 1 1 1 0 0 0 0 1 0 Bloc utilisé 0 0 1 1 1 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 F. Nolot 0 0 0 2 1 0 1 1 0 0 1 0 0 0 1 1 1 Licence d'informatique 2003-2004 45 Université de Reims Champagne-Ardenne 9 10 11 12 13 14 15 16 17 18 Bloc utilisé Bloc libre 1 8 0 0 1 1 0 1 1 1 0 0 0 0 1 0 0 0 1 1 1 Bloc libre F. Nolot 1 1 0 Licence d'informatique 2003-2004 46 Université de Reims – Champagne Ardenne Cohérence basée sur les fichiers Utilisé pour vérifier les entrées dans les répertoires Les systèmes de fichiers Pour chaque fichier, un compteur est incrémenté à chaque fois qu'il se trouve dans un répertoire Comparaison avec le compteur de lien enregistré dans les i-nodes F. Nolot Licence d'informatique 2003-2004 VI. Exemples 47 F. Nolot Licence d'informatique 2003-2004 48 Université de Reims – Champagne Ardenne Université de Reims Champagne-Ardenne ISO 9660 Standard international pour les CD-ROM depuis 1988 Les systèmes de fichiers Compatible avec la majorité des systèmes d'exploitation Données organisées sur une simple spirale continue A. ISO-9660 La spirale est divisé en bloc de 2352 octets La partie utile est de 2048 octets par bloc F. Nolot Licence d'informatique 2003-2004 49 Université de Reims Champagne-Ardenne F. Nolot ISO 9660 – les répertoires Le répertoire racine et les autres sont composés d'un nombre variable d'entrées dont la dernière est marquée par un bit spécial Début de 16 blocs d'une utilisation non définie Ensuite, le bloc descripteur primaire de volume composé des identificateurs Chaque entrée est de taille variable, constituée de 10 à 12 champs codés en ASCII ou binaire du système : 32 octets du volume : 32 octets de l'éditeur : 128 octets Ceux codés en binaires utilisent le format du préparateur de données : 128 octets Little endian (octet représenté avec le poids faible en premier) Le nom de 3 fichiers qui contiennent le résumé, la note sur les droits réservés et des informations bibliographiques Le nombre de blocs du CD, la date de création, la position du répertoire racine Licence d'informatique 2003-2004 Big endian (octet représenté avec le poids fort en premier) 51 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 52 Université de Reims Champagne-Ardenne ISO 9660 – les entrées de répertoire ISO 9660 – les entrées de répertoire (2) Longueur de l'entrée du répertoire (1 octet) La taille du nom du fichier (1 octet) Longueur de l'enregistrement des attributs étendus (1 octet) Le nom du fichier composé : d'un nom (max. 8 caractères), d'une extension (max. 3 caractères), un point, un point virgule, un numéro de version en binaire (entre 4 octets et 15 octets) Localisation du 1er bloc du fichier (8 octets). Stockage contigu des fichiers dont le 1er détermine la position des suivants Le nom : caractères (majuscules ou pas), chiffres et _ Taille du fichier (8 octets) Les entrées d'un répertoire sont listées dans l'ordre alphabétique Date et heure (7 octets) Pas de limite au nombre d'entrée d'un répertoire mais Profondeur maximale d'un répertoire : 8 niveaux Flags pour cacher une entrée, pour distinguer une entrée de répertoire de celle d'un fichier, ... (1 octet) F. Nolot 50 Université de Reims Champagne-Ardenne ISO 9660 (2) F. Nolot Licence d'informatique 2003-2004 Intervalle (2 octets) Padding pour ajuster la taille de l'entrée pour obtenir une longueur constante pour toutes les entrées Identification du CD qui contient le fichier : possibilité de stocké un « super » répertoire sur un CD et tous ses fichiers sur un autre (4 octets) Champ System use : non défini mais de taille paire Licence d'informatique 2003-2004 53 F. Nolot Licence d'informatique 2003-2004 54 Université de Reims Champagne-Ardenne Université de Reims – Champagne Ardenne ISO 9660 – Les 3 niveaux Il existe 3 niveaux concernant cette norme Les systèmes de fichiers Niveaux 1 : la plus restrictive Nom de fichier : 8+3 caractères Tous les fichiers doivent être contigus Nom de répertoire : 8 caractères sans extension B. L'extension Rock Ridge Niveaux 2 : nom de fichier et répertoire allant jusque 31 caractères Niveaux 3 : Niveau 2 + allègement de la contiguïté un fichier peut être constitué de plusieurs sections, chacune d'elles étant constitué de blocs contigus. Plusieurs blocs peuvent apparaître plusieurs fois dans un même fichier ou dans plusieurs fichiers. On obtient une optimisation de l'espace F. Nolot Licence d'informatique 2003-2004 55 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 56 Université de Reims – Champagne Ardenne Reproduire un système Unix ISO-9660 ne permet pas de reproduire un système de fichiers Unix (les liens, les attributs, ...) Les systèmes de fichiers Avec ISO-9660 + extension Rock Ridge, c'est possible Utilisation du champ System use pour stocker Les attributs POSIX (rwxrwxrwx) C. L'extension Joliet Numéro majeur et mineur d'un device Lien symbolique Autre nom du fichier : permet de lever la restriction sur les noms de fichier de la norme ISO-9660 Relocalisation d'un répertoire pour lever la limite sur la profondeur F. Nolot Heure de création, de modification et d'accès du fichier Licence d'informatique 2003-2004 57 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 58 Université de Reims – Champagne Ardenne Reproduire un système Windows Plusieurs extensions possibles: Les systèmes de fichiers Les noms longs : maximum de 64 caractères Utilisation de caractères Unicode, codés sur 2 octets Profondeur de répertoire supérieure à 8 niveaux Des répertoires pouvant avoir des extensions ! F. Nolot Licence d'informatique 2003-2004 D. MS-DOS 59 F. Nolot Licence d'informatique 2003-2004 60 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Format d'une entrée répertoire FAT pour MS-DOS Numéro du premier bloc du fichier, dans la table FAT Nom du fichier (8 octets) + extension (3 octets) Attributs : 1 octet Lecture seule, archive, caché, système Il existe 3 FAT pour MS-DOS Inutilisé : 10 octets Heure (2 octets) et Date (2 octets) FAT-12 : 12 bits pour une adresse disque Heure subdivisée en secondes (5 bits), minutes (6 bits) et heures (5 bits) FAT-16 : 16 bits pour une adresse disque FAT-32 : 28 bits pour une adresse disque Date subdivisée en jour (5 bits), mois (4 bits), année (7 bits) : la base 1980 Pour toutes les FAT : chaque bloc est un multiple de 512 octets et la taille d'unité d'allocation (cluster) varie Indice du premier bloc du fichier : 2 octets Taille du fichier : 4 octets F. Nolot Licence d'informatique 2003-2004 61 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 Université de Reims Champagne-Ardenne Limites de la FAT-12 Limites de la FAT-16 Taille maximale d'une partition : 212 x512=2 Mo Tailles des blocs : 8, 16 et 32 Ko En mémoire 4096 entrées de 2 octets chacune Taille maximale d'une partition : 2 Go (64 Ko d'entrées de 32 Ko chacune) Ensuite, apparition de bloc de 1, 2 et 4 Ko. Cela permet des partitions de 16 Mo maximum Taille maximale des disques : 8 Go MS-DOS supporte au maximum 4 partitions par disque donc des disques de 64 Mo maximum F. Nolot 62 Licence d'informatique 2003-2004 Apparition avec Windows 95 SE de la FAT-32 63 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 64 Université de Reims Champagne-Ardenne Limites de la FAT-32 Le système de fichiers de Windows 98 Adresses disques de 28 bits Windows 95 : limité au format de MS-DOS : 8+3 et FAT-12 ou FAT-16 Partition de taille maximale théorique : 2 x2 =8 To 28 15 Win95 Second Edition : utilisation des noms longs et FAT-32 Or le système mémorise les tailles des partitions dans des secteurs de 512 octets, en utilisant un nombre de 32 bits, donc 29 x232 =2 To Windows 98 et ME : idem que Win95SE Utilisation des 10 octets inutilisés Avantage de la FAT-32 F. Nolot Pour un disque de 2 Go, possibilité d'utiliser des blocs plus petit qu'en FAT-16 (obligatoirement 32 Ko en FAT-16) Licence d'informatique 2003-2004 65 F. Nolot Licence d'informatique 2003-2004 66 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Utilisation des 10 octets libres Gestion des noms longs 1 octet pour la compatibilité avec Windows NT 2 noms sont possibles pour un fichier (ou répertoire) 1 octet pour gestion de l'heure avec une meilleur précision Soit format 8+3 4 octets pour la date et heure de création F. Nolot Soit un autre format 2 octets pour la date du dernier accés Dans ce cas, fabrication d'un nom au format 8+3 2 octets pour stocker les 16 bits de poids fort du bloc de début Algorithme utilisé : 6 premiers caractères, suivis de ~1. Si le nom existe, ~2, ... Donc à l'emplacement de l'indice du premier bloc, on trouve maintenant les 16 bits de poids faible du bloc de début Les espaces, point en trop sont effacés Certains caractères spéciaux remplacés par _ Licence d'informatique 2003-2004 67 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 68 Université de Reims Champagne-Ardenne Gestion des noms longs (2) Entrée avec un nom long Séquence : 1 octet Si le nom est une partie d'un nom long : attribut prend la valeur 0x0F : valeur inexistante dans le format MS-DOS 5 caractères : 10 octets Attributs : 1 octet Le nom long est stocké dans une ou plusieurs entrées de répertoire, précédant le nom de fichier MS-DOS 0 : 1 octet Checksum : 1 octets 6 caractères : 12 octets Chaque entrée de nom long peut comprendre jusqu'à 13 caractères 0 : 2 octets 2 caractères : 4 octets F. Nolot Licence d'informatique 2003-2004 69 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 Université de Reims Champagne-Ardenne Organisation des séquences Exemple de noms longs Stockage dans l'ordre inverse avec le début du nom de fichier juste à coté du nom MS-DOS Fichier qui a pour nom : Sujet de l'examen de Système en Licence Les dernières parties du nom long : ajout de la valeur 64 à son numéro de séquence 67 m Limite à 260 caractères A 0 Ck L i c e n c 0 e 2 a m e n A 0 Ck d e s y s 0 t è 1 S u j e t A 0 Ck d e l ' 0 e x e e n Sujetd~1 F. Nolot 70 Licence d'informatique 2003-2004 71 F. Nolot A NT S Heure Licence d'informatique 2003-2004 Bas Taille 72 Université de Reims – Champagne Ardenne Université de Reims Champagne-Ardenne L'implémentation d'ext2 Bloc 0 : boot Les systèmes de fichiers Ensuite on a des groupes de blocs Chaque groupe de blocs est constitué D'un superbloc : nombre de blocs et i-nodes, taille des blocs, ... Descripteur de groupe Bitmap des blocs libres puis des i-nodes libres E. Ext 2 i-nodes Blocs de données Chaque i-node fait 128 octets 12 blocs et 3 indirections Les adresses sur 4 octets F. Nolot Licence d'informatique 2003-2004 73 Université de Reims Champagne-Ardenne F. Nolot Licence d'informatique 2003-2004 74 Université de Reims Champagne-Ardenne Les indirections Les répertoires Structure d'un i-node dans ext2: Ensenble non trié d'entrée de 16 octets Les Attributs Chaque entrée contient un nom de fichier et le numéro de l'i-node correspondant 12 premières adresses disques du fichier Si c'est insuffisant, existence de blocs d'indirections simple, double et triple Quand un fichier recherché est utilisé, chargement du numéro d'i-node et chargement de l'i-node dans la table des i-nodes (le numéro est utilisé comme indice) qui contient tous les i-nodes des fichiers ouverts Simple : pointe sur une structure qui contient des adresses disques supplémentaires Double : pointe sur une structure qui contient des adresses de redirection simple Triple : ... F. Nolot Licence d'informatique 2003-2004 75 Université de Reims – Champagne Ardenne F. Nolot Licence d'informatique 2003-2004 76 Université de Reims Champagne-Ardenne Caractéristiques de NT FileSystem Système de fichiers récent, mis au point pour Windows NT, réutilisé dans Windows 2000, amélioré dans Windows XP Les systèmes de fichiers Utilisation d'adresses disque sur 64 bits Les noms de fichiers limités à 255 caractères F. NTFS (version Windows 2000) Chemin complet limité à 32767 caractères Codage des noms au format Unicode Respect de la casse (mais pas par l'API Win32) F. Nolot Licence d'informatique 2003-2004 77 F. Nolot Licence d'informatique 2003-2004 78 Université de Reims Champagne-Ardenne Université de Reims Champagne-Ardenne Structure du système de fichiers Structure du système de fichiers (2) Chaque volume (partition) Chaque fichier possède une entrée dans la MFT et est vu comme une suite d'attribut. contient des fichiers, répertoires, bitmaps et structures de données Si l'attribut peut être stoké dans la MFT, il est dit résident (date, nom du fichier, ...) est organisé en une séquence de blocs (cluster) de taille comprise entre 512 octets et 64 Ko (généralement cluster de 4Ko) Les non-résidents sont alloués sur le disque Si un fichier est de petite taille, il est intégralement stoké dans la MFT, sinon pointe vers des clusters externes Chaque bloc est repérée par son offset par rapport au début du volume, utilisation d'adresses sur 64 bits F. Nolot Licence d'informatique 2003-2004 La MFT est un fichier qui peut croître jusque 248 enregistrements 79 Université de Reims Champagne-Ardenne Les fontionnalités de NTFS Support de la compression de fichiers, de répertoires et de volume Lecture/écriture par n'importe quelles applications, sans décompression par un autre programme L'algo de compression supporte des clusters au max. de 4Ko EFS (Encrypting File System) : NTFS5 Utilisation de clé de cryptage symétrique en combinaison avec la technologies des clés publiques pour protéger l'accés aux fichiers. F. Nolot Licence d'informatique 2003-2004 81 F. Nolot Licence d'informatique 2003-2004 80