0% ont trouvé ce document utile (0 vote)
21 vues69 pages

Gestion des Fichiers en Systèmes d'Exploitation

Transféré par

jalaca5494
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
21 vues69 pages

Gestion des Fichiers en Systèmes d'Exploitation

Transféré par

jalaca5494
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Systèmes d’Exploitation I

Chapitre IV :

Système de Gestion des


Fichiers

ESEN, Univ. Manouba


À quoi ressemble un disque
dur ?

19/04/17 OS I 2
Structure physique d'un disque
dur

19/04/17 OS I 3
Géométrie d'un disque dur
Adressage CHS : Cylinder/Head/Sector

● Cylindre: superposition
de plusieurs pistes
– Les pistes au dessus les
unes des autres sont
accessibles sans bouger les
têtes de lecture

19/04/17 OS I 4
Géométrie d'un disque dur
Adressage CHS : Cylinder/Head/Sector

Head:
– Les têtes de lecture/enregistrement sont
solidaires des bras mobiles
– Le plus souvent il y a une tête par surface soit
deux par plateau
– Le chemin parcouru par une tête particulière
sur un cylindre particulier s'appelle une piste


Secteur :
– La piste est divisée en secteurs (aussi appelés
blocs) contenant les données.
– La taille d'une piste diminue en allant vers
le centre du disque → le nombre de secteur
par piste diminue aussi en allant vers le
centre
– Taille d'un secteur plus commune= 512 octet
19/04/17 OS I 5
Taille d'un disque
● Taille d'un disque =
(Nombre de cylindre) x
(Nombre de piste par cylindre) x
(Nombre moyen de secteur par piste) x
(Taille du secteur)

● Exemple=
– Nombre de piste par cylindre 255
– Nombre de cylindre = 36481
– Nombre moyen de secteur par piste = 63
– Taille du secteur = 512 octets
– Taille du disque ≈ 300 GB (255 * 36481 * 63 * 512 = 300066439680
octets)

19/04/17 OS I 6
Pourquoi a-t-on besoin de
fichiers ?

19/04/17 OS I 7
Définition d'un fichier
● Toutes les applications informatiques doivent
enregistrer et retrouver des informations.

● L’espace d’adressage étant insuffisant, on utilise des


fichiers pour cela.

● Fichier (nom masculin)


– Meuble, boîte servant à recevoir des fiches.
– Ensemble de données regroupées en une unité indépendante
de traitement informatique.

19/04/17 OS I 8
Information indépendante du
processus
● Un processus en cours d’exécution peut enregistrer une quantité
d’informations dans son espace d’adressage mais cette façon de faire
présente trois inconvénients :
1)La capacité de stockage est limitée à la mémoire vive. Cette taille peut convenir
pour certaines applications, mais elle est beaucoup trop faible pour d’autres
(applications des banques, réservations, téléchargement p2p,...)
2)Les informations stockées en mémoire vive sont perdues, lorsque le processus
se termine ou lors du plantage de l'ordinateur. Pour un grand nombre d'applications,
les informations doivent être conservées pendant des durées importantes.
3)Il ne peut pas y avoir d’accès simultané à ces informations. Un répertoire
téléphonique stocké dans l’espace d’adressage d’un processus ne peut être
examiné que par ce seul processus (pour les raisons de protection des données
expliquées lors de l’étude des processus), de telle sorte qu’on ne peut rechercher
qu’un seul numéro à la fois.

→ Pour résoudre ce problème, il faut rendre l’information


indépendante d’un processus donné.
19/04/17 OS I 9
Stockage à long terme des
informations
Trois caractéristiques sont donc requises pour le
stockage des informations à long terme :

1) Il faut pouvoir stocker des informations de très grande taille ;

2) Les informations ne doivent pas disparaître lorsque le


processus qui les utilise se termine ;

3) Plusieurs processus doivent pouvoir accéder simultanément


aux informations.

19/04/17 OS I 10
Fichiers = solution au
problème
● La solution à tous ces problèmes consiste à stocker les
informations dans des fichiers sur des disques ou d’autres
supports.
– Les processus peuvent alors les lire ou en écrire de nouvelles.

● Les informations stockées dans des fichiers doivent être


permanentes, c’est-à- dire non affectées par la création ou
la fin d’un processus.

● Un fichier ne doit disparaître que lorsque son propriétaire le


supprime explicitement.

19/04/17 OS I 11
Qui les gère alors ?
● Les fichiers sont gérés par le système d’exploitation.

● La façon dont ils sont structurés, nommés, utilisés,


protégés et implémentés sont des points majeurs de
la conception du système d’exploitation.

● La partie du système d’exploitation qui gère les


fichiers est appelée le gestionnaire du système de
fichiers (en anglais file system)

19/04/17 OS I 12
Les tâches d'un SGF


Le stockage des fichiers sur le disque dur

La gestion de l'espace libre sur le disque dur

La gestion des fichiers dans un environnement
multi-utilisateurs

La donnée d'une interface conviviale pour
manipuler les fichiers (commandes et des attributs
simples pour manipuler et décrire les fichiers)

La donnée d'utilitaires pour le diagnostic, la
récupération en cas d'erreurs, l'organisation des
fichiers
19/04/17 OS I 13
Deux Visions du système de Fichiers

● Point de vue de l’utilisateur: nommage des


fichiers, protection et droit d’accès, opération
autorisées, etc.
● Point de vue concepteur : organisation physique

d’un fichier sur un disque, gestion des blocs et


manipulation des blocs physiques attribués à un
fichier, gestion de l’espace libre du disque.

19/04/17 OS I 14
Les fichiers

19/04/17 OS I 15
Les fichiers du point de vue
utilisateur
● L’utilisateur attache la plus grande importance à
l’interface d’un système de fichiers, c’est-à-dire à
la manière de nommer les fichiers, de les protéger,
aux opérations permises sur eux, etc.
– Il est moins important pour lui de connaître les détails de
son implémentation, c’est-à-dire de connaître le nombre de
secteurs d’un bloc logique ou de savoir si l’on utilise des
listes chaînées ou des tables de bits pour mémoriser les
emplacements libres.
– Ces points sont, en revanche, fondamentaux pour le
concepteur du système de fichiers.

19/04/17 OS I 16
Nom d’un fichier : Pourquoi ?
● Les fichiers sont un mécanisme d'abstraction.
– Ils permettent d’écrire des informations sur le disque et de les lire
ultérieurement.

● Ceci doit être fait de manière à masquer le fonctionnement et


l’emplacement de stockage des informations à l’utilisateur.
– Il ne doit pas avoir à choisir tel ou tel secteur, par exemple.

● La gestion et l’affectation des noms des objets sont les


parties les plus importantes d’un mécanisme abstrait.
– Un processus qui crée un fichier lui attribue un nom.
– Lorsque le processus se termine, le fichier existe toujours et un autre
processus peut y accéder au moyen de ce nom.
19/04/17 OS I 17
Nom d’un fichier : Règles de formation ?

● Les règles d’affectation des noms de fichiers varient d’un


système à un autre, mais tous les systèmes d’exploitation
autorisent les noms de fichiers constitués de chaînes de un à
huit caractères non accentués.
– Ainsi « esen » et « manouba » sont des noms de fichiers valides.
– Les chiffres et des caractères spéciaux sont quelquefois autorisés. Ainsi « 2
», « urgent! » et « Fig.2-14 » peuvent être des noms valides.

● Certains systèmes de fichiers différencient les lettres


majuscules et minuscules alors que d’autres ne le font pas.
– Unix fait partie de la première catégorie et MS-DOS de la deuxième.
– Les noms suivants désignent donc des fichiers distincts sur un système
Unix : « esen », «Esen» et « ESEN ».
– Sur MS-DOS, ils désignent le même fichier.
19/04/17 OS I 18
Nom de fichier: extension

● De nombreux systèmes d’exploitation gèrent des noms en deux


parties, les deux parties étant séparées par un point, comme dans
« prog.c ». La partie qui suit le point est alors appelée extension ;
elle donne en général une indication sur la nature du fichier.
– Sous MS-DOS, par exemple, les noms de fichiers comportent 1 à 8 caractères
éventuellement suivis d’une extension de 1 à 3 caractères.
– Sous Unix, la taille de l’extension éventuelle est libre, le fichier pouvant même
avoir plus d’une extension comme dans « prog.c.Z ».


Dans certains cas, les extensions sont simplement des
conventions et ne sont pas contrôlées. Un fichier « [Link] » est
vraisemblablement un fichier texte, mais ce nom est destiné
davantage au propriétaire du fichier qu’au système d’exploitation.
En revanche, certains compilateurs C imposent l’extension « .c »
à tous les fichiers à compiler
19/04/17 OS I 19
Les attributs des fichiers
● Chaque fichier possède un nom et des données.

● Les systèmes d'exploitation associent des


informations complémentaire :
– l'heure et la date de sa création et sa taille

→ Ces informations sont appelés les attributs du


fichier (file's attributes) ou metadonnées
(metadata)

19/04/17 OS I 20
Les attributs des fichiers

19/04/17 OS I 21
Les opérations sur les fichiers
● Create ● Append
● Delete ● Seek
● Open ● Get atributes
● Close ● Set attributes
● Read ● Rename
● Write

19/04/17 OS I 22
La structure des fichiers
● Les fichiers peuvent être structurés de
différentes manières
– Suite d'octets
– Suite enregistrement
– Arbre

19/04/17 OS I 23
Fichier= suite d'octets
● Le fichier est une suite d'octets
sans structure
– Le système d'exploitation ne connaît
pas et ne s'occupe pas du contenu
de ce fichier
– Il ne voit que des octets
– Toute signification doit être apporté
par le programme des utilisateurs
– UNIX et Windows suivent tout deux
cette approche

1 octet
19/04/17 OS I 24
Fichier= suite
d'enregistrements
● Le fichier est une suite d'enregistrements de
longueur fixe
– Concept principal : une opération de lecture renvoie un
enregistrement/une opération d’écriture réécrit ou ajoute
un enregistrement
– 80 caractère → carte perforées de 80 colonnes
– 132 caractères → imprimantes de 132 colonnes
– Les programmes lisaient les données par bloc de 80
caractère est écrivaient par bloc de 132 caractères
– Obsolète

19/04/17 OS I 25
Fichier= arbre
● Le fichier est un arbre d'enregistrement
– Les enregistrement n'ont pas la même longueur
– Chaque enregistrement contient une clé dont la
position est fixe dans l'enregistrement
– L'arbre est trié en fonction des clés → permet de
rechercher rapidement une clé donnée
– L'opération fondamentale ne consiste pas à obtenir
le prochain enregistrement, mais obtenir un
enregistrement avec une clé donnée

19/04/17 OS I 26
Les fichiers ASCII

● Les fichiers ASCII se composent de lignes


de texte
– Chaque ligne se termine par le caractère retour
chariot (CR : Carriage Return) ou le caractère saut
de ligne (LF : Line Feed)
– On peut les afficher et les éditer avec n'importe quel
éditeur de texte

19/04/17 OS I 27
Les fichiers binaires

● Ce ne sont pas des fichiers ASCII !


– Si on les affiche cela donne un résultat incompréhensible
– Ils possèdent une structure interne connue des
programme qui les exploitent

● Bien que techniquement le fichier soit juste une


structure d'octets, le système d'exploitation
exécutera ce fichier seulement s'il possède un
certain format

19/04/17 OS I 28
L'accès au fichiers : accès
séquentiel
● Les premiers systèmes d'exploitation
proposaient un seul type d'accès au
fichiers : l'accès séquentiel (sequential
access).
– Dans ce système, un processus pouvait lire tous les
octets ou tous les enregistrements d'un fichier dans
l'ordre en commençant au début

19/04/17 OS I 29
L'accès au fichiers : accès
aléatoire
● Lorsque les disques ont servi à l'enregistrement
des fichiers, il est devenu possible de lire des
octets ou des enregistrement d'un fichier dans
n'importe quel ordre

● Les fichiers dont les octets ou les


enregistrement peuvent être lus dans n'importe
quel ordre sont appelés fichier à accès directe
ou accès aléatoire (random access)

19/04/17 OS I 30
La conception des systèmes de
fichiers
utilisateur vs. concepteur
● Nous examinons maintenant le système de fichiers du point de vue
du concepteur.

● Les utilisateurs se préoccupent des noms des fichiers, des


opérations qui permettent de les manipuler, de l’arborescence des
fichiers, ...

● Les concepteurs portent d'avantage leur attention sur l’organisation


de l’espace du disque et sur la manière dont les fichiers et les
répertoires sont sauvegardés.

→ Ils recherchent un fonctionnement efficace et fiable

19/04/17 OS I 31
L'organisation du système de
fichier
rôle de l'MBR
● Les systèmes de fichiers sont enregistrés sur des disques.

● Les disques peuvent être divisés en une ou plusieurs partitions,


avec des systèmes de fichiers indépendants sur chaque partition.

● Le secteur 0 du disque appelé enregistrement d'amorçage maître


(MBR – Master Boot Record) sert à amorcer la machine

● La fin du MBR comprend la table de partitions, laquelle indique


l'adresse de début et de fin de chaque partition
– Une de ces partitions est marquée comme étant la partition active

19/04/17 OS I 32
L'organisation du système de
fichier
le bloc d'amorçage
● Quand l’ordinateur est amorcé, le BIOS lit et
exécute le MBR
– Le programme MBR détermine la partition active, y lit le
premier bloc appelé bloc d'amorçage (boot block) et
l'exécute

● Le programme du bloc d'amorçage charge le


système d'exploitation contenu dans cette
partition

19/04/17 OS I 33
L'organisation du système de
fichier
● Pour une question d'uniformité, chaque partition
commence un bloc d'amorçage, même si elle ne
contient pas de système d'exploitation
– Elle pourrait en contenir un ultérieurement

● Une organisation possible d'un système de fichiers

19/04/17 OS I 34
L'organisation du système de
fichier
le superbloc

● Après le bloc de boot, vient généralement le


superbloc (superblock)
– Contient tout les paramètres clé concernant le système de
fichier
– Contient un numéro magique qui identifie le type de
système de fichier

19/04/17 OS I 35
Organisation logicielle de l’espace du
disque
● Les fichiers étant habituellement sauvegardés sur
des disques, l’organisation logicielle de l’espace
du disque est primordiale pour les concepteurs de
systèmes de fichiers.

● Celle-ci porte sur la stratégie de stockage, sur la


taille des blocs et sur la façon de repérer les blocs
libres.

19/04/17 OS I 36
Organisation de l’espace du
disque
Taille des blocs
● Il faut alors déterminer la taille optimale d’un
bloc.

● Si l’on prend des blocs de 1 Ko sur un


disque dont les secteurs font 512 octets, le
système de fichiers lit et écrit deux secteurs
consécutifs en les considérant comme un
ensemble unique et indivisible, appelé unité
d’allocation (cluster).

19/04/17 OS I 37
Les méthodes de stockage des
fichiers
● Les fichiers étant constitués d’un certain nombre de blocs, le
système de fichiers doit mémoriser les blocs des différents fichiers.

● Le principe fondamental pour stocker un fichier est de mémoriser


l’adresse des blocs le constituant.

● Différentes méthodes sont utilisées pour cela :


– allocation contiguë,
– allocation par liste chaînée,
– allocation par liste chaînée indexée
– et nœud d’information (i-node)

19/04/17 OS I 38
Stockage des fichiers
Allocation contiguë

La méthode d’allocation la plus simple consiste à stocker
chaque fichier dans une suite de blocs consécutifs. Un fichier
de 50 Ko, par exemple, occupera 50 blocs consécutifs sur un
disque dont la taille des blocs est 1 Ko.


Cette méthode a deux avantages importants :
1)elle est simple à mettre en œuvre puisqu’il suffit de mémoriser un
nombre, l’adresse du premier bloc, pour localiser le fichier.
2)les performances sont excellentes puisque tout le fichier peut être lu
en une seule opération.

→ Aucune autre méthode d’allocation ne peut l’égaler.

19/04/17 OS I 39
Stockage des fichiers
Allocation contiguë
● Malheureusement, l’allocation contiguë présente également
deux inconvénients importants :

– Premièrement, elle ne peut être mise en œuvre que si la taille


maximum du fichier est connue au moment de sa création.
● Sans cette information, le système d’exploitation ne peut pas déterminer
l’espace à réserver sur le disque.
● Dans les systèmes où les fichiers doivent être écrits en une seule opération,
elle peut néanmoins être avantageusement utilisée.

– Le deuxième inconvénient est la fragmentation du disque qui


découle de cette politique d’allocation.
● Elle gaspille de l’espace sur le disque.
● Le compactage du disque peut y remédier mais il est en général coûteux. Il
peut cependant être réalisé la nuit lorsque le système n’est pas chargé.
19/04/17 OS I 40
Stockage des fichiers
Allocation contiguë

(a) Allocation contiguë de l'espace disque pour 7 fichier


(b) L'état du disque après suppression des fichiers D et F

19/04/17 OS I 41
Stockage des fichiers
Allocation par liste chaînée
● La deuxième méthode consiste à sauvegarder les blocs des fichiers dans
une liste chaînée. Le premier mot de chaque bloc, par exemple, est un
pointeur sur le bloc suivant. Le reste du bloc contient les données.

● Cette méthode possède les avantages suivants :


– Contrairement à l’allocation contiguë, tous les blocs peuvent être utilisés → Il n’y a pas
d’espace perdu en raison d’une fragmentation du disque.
– L’entrée du répertoire stocke simplement l’adresse du premier bloc. Les autres blocs sont
trouvés à partir de celui-là.

● Elle possède également des inconvénients :


– Si la lecture séquentielle d’un fichier est simple, l’accès direct est extrêmement lent.
– Le pointeur sur le bloc suivant occupant quelques octets → l’espace réservé aux données
dans chaque bloc n’est plus une puissance de deux.
● Ceci est moins efficace car de nombreux programmes lisent et écrivent des blocs dont la taille est une
puissance de deux.

19/04/17 OS I 42
Stockage des fichiers
Allocation par liste chaînée

19/04/17 OS I 43
Stockage des fichiers
Allocation par liste chaînée indexée

Les inconvénients de l’allocation au moyen d’une liste chaînée
peuvent être éliminés en retirant le pointeur de chaque bloc
pour le placer dans une table ou en index en mémoire. MS-DOS
utilise cette méthode avec la FAT (File Allocation Table).


Cette méthode possède les avantages suivants :
– Elle libère intégralement l’espace du bloc pour les données → Elle
facilite les accès directs.

La liste doit toujours être parcourue pour trouver un déplacement donné dans le
fichier, mais elle réside entièrement en mémoire et peut être parcourue sans
accéder au disque.
– Comme pour la méthode précédente, l’entrée du répertoire contient
un seul entier (le numéro du premier bloc) qui permet de retrouver
tous les autres blocs quelle que soit la taille du fichier.

19/04/17 OS I 44
Stockage des fichiers
Allocation par liste chaînée indexée

Le fichier A utilise les


blocs 4,7 2 10 et 12

Le fichier B utilise les


blocs 6,3 11 et 14

19/04/17 OS I 45
Stockage des fichiers
Allocation par liste chaînée indexée
● Le principal inconvénient de cette méthode
vient du fait que la table doit résider
entièrement en mémoire en permanence.

● Un grand disque de 500 GO, avec une taille de


bloc=1ko. Déterminer le nombre d’entrée dans
la table nécessaire pour indexer ce disque?
● Si chaque entée est codée sur 3 octets,
déterminer la taille de la table.

19/04/17 OS I 46
Stockage des fichiers
Nœuds d’information i-node
● Pour mémoriser quel bloc appartient à
quel fichier, une dernière méthode
consiste à associer à chaque fichier
un structure de donnée appelée
nœud d'index ou i-node.

● Un i-node inclut
1)les attributs
2)et les adresses disque des blocs du
fichier

● En fonction de l'i-node il est


possible de trouver tous les blocs
d'un fichier
19/04/17 OS I 47
Stockage des fichiers: Avantage des i-
node

● Le grand avantage de cette conception est que le i-


node a besoin d'être en mémoire seulement quand
le fichier correspondant est ouvert.
– Si chaque i-node occupe n octets
– Et un maximum de k fichiers peuvent être ouvert en même
temps
– La mémoire totale occupée par le tableau contenant les i-
nodes des fichiers ouverts est k*n octets
→ seul cet espace pourra être réservé à l'avance.

19/04/17 OS I 48
Stockage des fichiers: Avantage des i-
node
● Le tableau des i-node des fichiers ouverts est plus petit que
l'espace occupé par la table du cas de l'allocation par liste
chaînée indexée.

– La taille de la table de maintient de la liste chaînée croît


proportionnellement avec la taille du disque : si le disque contient
n blocs la table contient n entrée → elle croît linéairement à
mesure que la taille du disque augmente

– Le concept de i-node requiert un tableau en mémoire dont la taille


est proportionnelle au nombre maximum de fichier qui peuvent
être ouvert simultanément → quelque soit la taille du disque

19/04/17 OS I 49
Stockage des fichiers : Problème des i-
node
● Les i-nodes posent cependant un problème :

– si chacun d'eux a la place pour un nombre donné


d'adresse disque, que se passe-t-il lorsqu'un fichier croît
au-delà de cette limite ?

– La solution est de réserver la dernière adresse disque,


non pour un bloc de données du fichier mais pour
l'adresse d'un bloc comprenant plusieurs adresse
supplémentaire

19/04/17 OS I 50
Organisation de l’espace du
disque
Repérage des blocs libres

● Dès qu’on a choisi la taille des blocs, on doit


trouver un moyen de mémoriser les blocs libres

● Les deux méthodes les plus répandues sont


– Liste chaînée
– Table de bits

19/04/17 OS I 51
Organisation de l’espace du
disque
Repérage des blocs libres

19/04/17 OS I 52
Organisation de l’espace du disque
Repérage des blocs libres

● La première méthode consiste à utiliser une liste


chaînée des blocs du disque, chaque bloc
contenant des numéros de blocs libres.

● La deuxième technique de gestion des espaces


libres a recours à une table de bits, chaque bit
représentant un bloc et valant 1 si le bloc est
occupé (ou libre suivant le système d’exploitation).
– Un disque de n blocs requiert une table de n bits.

19/04/17 OS I 53
Organisation de l’espace du disque
Repérage des blocs libres - liste
chaînée

Considérons un disque dur de 500GB. Une
taille d'un bloc de 1KO.

→ Le disque contient (500* 2³⁰ )/ (1*2¹⁰*2³)= 500* 2¹⁷ blocs

Le numéro de bloc codée sur 32 bits. c’est la Taille d'un
élément de la liste chaînée => un bloc contiendra 2 ⁸=256
numéros de bloc libres

Nombre de numéro de bloc libre que peut contenir un bloc de
1Ko =

Taille d'un bloc en bit / taille du numéro du bloc

(2¹⁰ * 2³ )/2⁵ = 2⁸=256 numeros


Le nombre de blocs nécessaires pour adresser tous les
blocs du disque dur : (500*2¹⁷ / 2⁸ = 500*2⁹ blocs)

→ 256000 blocs !!!!
19/04/17 OS I 54
Organisation de l’espace du disque
Repérage des blocs libres – table de bit

Considérons un disque dur de 500GB. Une
taille d'un bloc de 1KO.

→ Le disque contient 500* 2¹⁷ blocs


1 bloc est représenté par un bit → taille max
de la table de bit = 500* 2¹⁷ bits


Pour adresser tous les blocs du disque dur
il nous faut combien de blocs ??

→ 500* 2¹⁷ bits / 2¹⁰*2³ bits= 500*2⁴= 8000
blocs
19/04/17 OS I 55
Exemple de systèmes de
fichiers

19/04/17 OS I 56
Les systèmes de fichiers de MSDOS : FAT
(16/32)

● C'est un système de fichier qui a été utilisé


sur les premiers ordinateurs personnels
d'IBM
– Il est utilisé (Fat32) dans toutes les version de
Windows et dans des appareils embarqué
– Il est utilisé par Apple dans ces appareils embarqué
– Plus utilisé que le système de fichier moderne
NTFS (journalisé)

19/04/17 OS I 57
Taille maximale d'un fichier
MSDOS

● MS-DOS enregistre la taille exacte du fichier


en utilisant un nombre sur 32 bits
– Les fichiers peuvent ainsi avoir en théorie une taille
maximal de 4Go (2^32 = 4294967296 = 4Go).
– Cependant, la taille maximale d'un fichier est limité
à 2Go.

19/04/17 OS I 58
MSDOS et FAT
● MS-DOS conserve une trace des blocs de fichiers dans
une table d'allocation en mémoire principale

– L'entrée du répertoire comprend le numéro du premier bloc

– Celui-ce sert de l'index dans les entrées de la FAT (File


Allocation Table) de 64 Ko qui présente en mémoire principal

– En suivant le chaînage, on peut trouver tous les blocs

19/04/17 OS I 59
FAT 12 – 16 -32
● Il existe trois versions du système de fichier
de type FAT : FAT-12, FAT-16 et FAT-32, selon
le nombre de bits d'une adresse disque

● FAT-32 porte mal son nom, puisque seuls les


28 bits de poids faible des adresses disque
sont employées.
– On aurait dû l'appeler FAT-28 !

19/04/17 OS I 60
Taille maximale de partition dans
FAT-16
● FAT avec des pointeurs de disques de 16
bits
– Taille de bloc de 8,16,32 Ko
– Taille maximale de la partition 2¹⁶ adresses x 32 Ko
chacune = 2 Go
– Un disque supporte 4 partitions → taille maximal
d'un disque de 8 Go

19/04/17 OS I 61
Taille maximale de partition dans
FAT-32
● FAT avec des pointeurs de disques de 28
bits
– Taille maximale de la partition = 2²⁸ adresse x 32
Ko = 2²⁸ x (2⁵) x (2³²) = 2 To

19/04/17 OS I 62
Avantages de FAT-32

Nombre de partition :
– Un disque de 8Go peut être constitué d'une seule partition au lieu de 4
(dans FAT-16).


Taille de bloc :
– FAT-16 doit absolument utilisé un bloc 32 Ko pour une partition de 2 Go
– FAT-32 on peut utilise des blocs de 4 Ko pour une partition de 2 Go
– L'avantage de disposer de blocs de plus petite taille est que l'on
gaspille moins d'espace

un fichier est de 10 octets occupe 32 Ko d'espace disque

Avec un fichier de 8 Ko et des blocs de 32 Ko : 3/4 du bloc gaspillé

Avec un fichier de 8 Ko et un bloc de 4 Ko → pas de gaspillage disque

19/04/17 OS I 63
Système de fichier d'UNIX

Un répertoire UNIX comprend une entrée pour chaque fichier
de ce répertoire.


Chaque entrée est extrêmement simple
– Le nom du fichier (14 octets)
– Et le numéro de son i-node (2 octets)
– Ces paramètres limitent à 64 Ko le nombre de fichier par système de fichier

19/04/17 OS I 64
Les i-nodes sous UNIX
● Un i-node unix stocke à la fois les attributs (metadata) ainsi que les pointeurs
sur les blocs

● Les i-nodes UNIX contiennent certains attributs


– La taille du fichier
– Trois information temporelles
● Date et heure de créations
● Date et heure du dernier accès
● Date et heure de la dernière modification
– Le nom du propriétaire
– Le nom du groupe
– Les information de protection
– Un compteur indiquant le nombre d'entré de répertoires pointant sur lui (pour les liens)
● Un compteur indiquant 0 → l'i-node est récupéré et les blocs de disque sont placés dans la lste des
blocs libres

19/04/17 OS I 65
Les i-nodes sous UNIX
● Les 10 (12) premières adresses des locs sont
enregistrées dans l'i-node lui-même

– Pour les petits fichiers, toutes les informations nécessaire se


trouvent dans l'i-node, lequel est chargé dans la mémoire quand le
fichier est ouvert

– Pour de plus grands fichiers, une des adresses de l'i-node


correspond à l'adresse d'un bloc de disque appelé bloc de simple
indirection (single indirect block)
● Ce bloc contient non pas de données mais des adresses supplémentaires

19/04/17 OS I 66
Les i-nodes sous UNIX
● Si cela n'est pas suffisant, une autre adresse de l'i-
node, appelée bloc de double indirection (double
indirect block), contient l'adresse d'un bloc qui
contient une lise de bloc de simple indirection
– Chacun de ces blocs de simple indirection pointe sur
quelques centaines de blocs de données

● Si cela ne suffit toujours pas, on peut avoir recours


à un bloc de triple indirection (triple indirect block)

19/04/17 OS I 67
Les i-nodes d'UNIX

19/04/17 OS I 68
Les i-nodes d'UNIX
● Exemple : chemin d'accès /usr/ast/mbox

19/04/17 OS I 69

Vous aimerez peut-être aussi