Vous êtes sur la page 1sur 3

Correction TD 5 : Gestion des fichiers

Exercice 1
Voir cours

Exercice 2
1. Si on commence la numérotation des blocs par 0 :

2. Cette liste doit être évidemment sauvegardée sur le disque, pour pouvoir la charger en mémoire
dès le lancement du système et la rendre disponible pour le module « gestion de l’espace libre » du
SGF.
3. Zone accordée composée des blocs : 17, 18, 19 et 20.

4. S’il s’agit d’une demande d’une zone contiguë de 05 blocs : la demande ne peut pas être satisfaite.
S’il s’agit de blocs pas nécessairement contigus, la demande peut être satisfaite. Les blocs accordés
sont : 2, 3, 4, 9, 12. La nouvelle liste est alors :

Exercice 3
1. Le nombre d’adresses dans un bloc d’adresses =1024/4 =256 pointeurs.
Taille max d’un fichier = (12 +256 +2652 +2563) x 1ko
= 16 777 216 Ko

2. Le nombre total de blocs= le nombre de bloc de données + le nombre de bloc d’adresses


*Le nombre de blocs de données = Taille du fichier/ taille du bloc
= 20000000/1024
= 19531,25 = 19532 blocs
*Le nombre de blocs d’adresses
 L’allocation est réalisée comme suit : 12 blocs de données sont en accès direct pointés par les
12 premières entrées de la table de l’inode.
 Il reste à allouer 19532 – 12 = 19520 blocs de données.
 Le niveau INDIRECT_1 permet d’allouer 256 blocs.
1
 Il reste 19520 – 256 = 19264 blocs de données.

 On a à ce niveau un premier bloc d’adresses (ou d’index).


 Le niveau INDIRECT_2 permet d’allouer au maximum 2562 blocs de données ce qui est
largement supérieur à 19264.
 Tous les blocs restants sont donc repérés à partir de ce niveau. Il faut déterminer jusqu’à
quelle profondeur.
 On peut écrire que 19264 = 256 * 75 + 64, nécessite donc 76 blocs d’index INDIRECT_2_i
(75 blocs d’index INDIRECT_2_i pleinement utilisés et 1 dernier bloc d’index
INDIRECT_2_76 avec uniquement les 64 premières entrées d’utilisées).
 Nous avons donc à ce niveau 77 blocs d’index (76 blocs d’index INDIRECT_2_i + 1 bloc
d’index INDIRECT_2).
 Au total 78 blocs d’adresses (ou d’index) sont donc nécessaires.

Le nombre total de blocs= le nombre de bloc de données + le nombre de bloc d’adresses


= 19532+78=19610 blocs

3. Le nombre total d’octets utilisés= le nombre total de blocs * Taille du bloc


= 19610*1024
= 20 080 640 octets
4. La perte due à la réservation des blocs de données= 0.75*1024=768 octets
5. La perte due à la réservation des pointeurs d’adressage
*bloc d’@ ID-1 : (256-76)*4=720
*bloc d’@ ID-76 : (256-64)*4= 768
D’où la perte totale des pointeurs= 720+768= 1488 octets

6. Fragmentation interne totale résultant de la sauvegarde de ce fichier= la perte due à la réservation


des blocs de données+ la perte due à la réservation des pointeurs d’adressage
=768+1488=2270 octets

2
Exercice 4

Vous aimerez peut-être aussi