Vous êtes sur la page 1sur 81

Systèmes d’exploitation

1ére année EEA

Mr : Mounir Ounissi
FACULTE DES SCIENCES BIZERTE

cours système d'exploitation Ounissi Mounir 1


Gestion des fichiers : SGF

Un utilisateur de systèmes informatiques doit impérativement


manipuler des informations sous forme de fichiers, files ;
Programmation c : fichiers .h et .c.
Si on rédige un rapport ou on réalise une présentation ou encore si
on installe un logiciel, on manipule en écriture, lecture et exécution
des fichiers de différentes extension ;
En quoi consiste un fichier et comment le système d’exploitation
gère les fichiers.

cours système d'exploitation fsb Mounir Ounissi 2


Gestion des fichiers : SGF

Qu’est ce qu’un système de gestion de fichiers ?

 La mémoire persistante répond a plusieurs besoins :


 conserver des données au delà de la durée de vie d’un processus ;
 mémoriser une quantité de données supérieure aux capacités de
la mémoire vive ; partager des données.

cours système d'exploitation fsb Mounir Ounissi 3


Gestion des fichiers : SGF

Le système de gestion de fichiers est un ensemble de structures de


données et de procédures les manipulant qui doit assurer :

la définition et la manipulation de l’abstraction fichier ;


 l’organisation logique de ces abstractions (hiérarchie
arborescence basée sur la notion de répertoire) ;
le liens entre cette abstraction et son implantation matériel ;
la pérennité des informations stockées (confidentialité, tolérance
aux pannes, robustesse, etc.)

cours système d'exploitation fsb Mounir Ounissi 4


Gestion des fichiers : SGF

 Le Système de Gestion de Fichiers (SGF) joue un rôle central


dans un système d’exploitation car il doit gérer la plupart des
informations des usagers et du système lui-même.
 Le fichier est l’unité logique de base d’un SGF.
 La conservation des fichiers et la réalisation des fonctions
d’accès impliquent la prise en charge par le SGF de :

cours système d'exploitation fsb Mounir Ounissi 5


Gestion des fichiers : SGF

 la gestion du support physique en masquant à l’utilisateur les détails


de l’organisation physique de ses fichiers
 la sécurité des fichiers, c’est à dire la garantie de leur intégrité en cas
d’incident ou de malveillance.
 la protection des fichiers, c’est à dire le respect des règles
d’utilisation fixées (droits d’accès, conditions de partage...)

Information Information
logique physique

•Disque
•Nom folder •Cylindre
•Nom fichier •Piste
•Indications •Secteur
fichier

cours système d'exploitation fsb Mounir


6
Ounissi
Gestion des fichiers : SGF

Un système de fichiers (file system) ou système de gestion de


fichiers, SGF, est la partie la plus visible d’un système d’exploitation :
 Il est un composant du noyau du système d’exploitation ;
 Il est une structure de données permettant de stocker les
informations et de les organiser dans des fichiers sur des mémoires
secondaires (disque dur, disquette, CD-ROM, clé USB, etc.) ;
 Il permet de traiter, de conserver des quantités importantes de
données ainsi que de les partager entre plusieurs programmes
informatiques ;
 offre a l'utilisateur une vue abstraite sur ses données et permet de
les localiser a partir d'un chemin d'accès.

cours système d'exploitation fsb Mounir Ounissi


7
Partitionnement

consiste à « cloisonner » le disque. Il permet la cohabitation de


plusieurs systèmes d’exploitation sur le même disque (il permet
d’isoler certaines parties du système). L’information sur le
partitionnement d’un disque est stockée dans son premier secteur
(secteur zéro), le MBR (Master Boot Record).

cours système d'exploitation fsb Mounir Ounissi


8
Partitionnement

Deux types de partitionnement :


- Primaire : On peut créer jusqu’à 4 partitions primaires sur un même
disque.
- Etendue est un moyen de diviser une partition primaire en sous-
partitions (une ou plusieurs
Partitions logiques : qui se comportent comme les partitions primaires,
mais sont créées différemment (pas de secteurs de démarrage))
Dans un même disque, on peut avoir un ensemble de partitions
(multi-partition), contenant chacune un système de fichier (par
exemple DOS et UNIX)

cours système d'exploitation fsb Mounir Ounissi 9


Organisation du système de fichier

Formatage
Avant qu’un système de fichiers puisse créer et gérer des fichiers
sur une unité de stockage, son unité doit être formatée selon les
spécificités du système de fichiers. Le formatage inspecte les
secteurs, efface les données et crée le répertoire racine du système
de fichiers. Il crée également un superbloc pour stocker les
informations nécessaires à assurer l’intégrité du système de fichiers.

cours système d'exploitation fsb Mounir


10
Ounissi
superbloc

Un superbloc contient notamment :


L’identifiant du système de fichiers (C:, D : ..),
 Le nombre de blocs dans le système de fichiers,
 La liste des blocs libres, l’emplacement du répertoire racine,
la date et l’heure de la dernière modification du système de
fichiers,
 une information indiquant s’il faut tester l’intégrité du système
de fichiers.

cours système d'exploitation fsb Mounir


11
Ounissi
Rôles d’un système de gestion de fichiers

Un SGF a pour principal rôle de gérer les fichiers et d’offrir les


primitives pour manipuler ces fichiers. Il effectue généralement
les tâches suivantes :

cours système d'exploitation fsb Mounir Ounissi 12


Rôles d’un système de gestion de fichiers

Fournit une interface conviviale pour manipuler les fichiers (vue


fournie à l’utilisateur).
Il . s’agit de simplifier la gestion des fichiers pour l’utilisateur
(généralement, l’utilisateur fournis seulement les attributs nom et
extension du fichier, les autres attributs sont gérés implicitement
par le SGF).
Cette interface fournit la possibilité d’effectuer plusieurs
opérations sur les fichiers. Ces opérations permettent généralement
d’ouvrir, de fermer, de copier, de renommer des fichiers et des
répertoires.

cours système d'exploitation fsb Mounir Ounissi 13


Rôles d’un système de gestion de fichiers

 La gestion de l’organisation des fichiers sur le disque (allocation


de l’espace disque aux fichiers)
La gestion de l’espace libre sur le disque dur
La gestion des fichiers dans un environnement Multiutilisateurs
la donnée d’utilitaires pour le diagnostic
la récupération en cas d’erreurs, l’organisation des fichiers

cours système d'exploitation fsb Mounir Ounissi 14


SGF offre une interface simple a l’utilisateur pour lui permettre de
gérer tout type de fichiers (.doc, .pdf, .fla …).
C'est un ensemble de fonctions agissant au niveau logique (de point
de vue utilisateur) et assurant toute les manipulations que l’utilisateur
veut ou peut faire sur les fichiers : création, déplacement,
suppression..
Les données dans le fichier sont organisées selon les besoins de
l'utilisateur.

Niveau utilisateur Fichier logique

cours système d'exploitation fsb Mounir Ounissi 15


Fonctions d’un système d’exploitation

Le SGF assure l’implantation physique des fichiers sur les


supports de mémoire secondaires (ou auxiliaires). Ceci consiste a
assurer les fonctions logiques de point de vue physique c'est-a-
dire assurer l’organisation, l’administration et l’accès aux fichiers
sur les mémoires secondaires (disque, disquette, CD…).
- allocation des fichiers sur le support de masse
- répertoire
Fichier Physique

Niveau Système ou physique

cours système d'exploitation fsb Mounir Ounissi 16


Fonctions d'un système de gestion des fichiers

 Un SGF gère les supports physiques en masquant a l’utilisateur les


détails de l’allocation de l’espace physique sur les supports.
 En outre, le SGF doit assurer :
La sécurité des fichiers en respectant les règles d’utilisation : les
droits d’accès, les conditions de partage (quotas de disque) ;
 La fiabilité des supports physiques en fournissant des outils de
vérification et de récupération des données.

cours système d'exploitation fsb Mounir Ounissi 17


Concept de fichier

Définition généraliste
 Un fichier est une unité informationnelle physiquement stockée sur
un support de mémoire de masse permanent, pour les besoins de
l’utilisateur.
 Le fichier constitue le seul et unique moyen pour sauvegarder des
informations contenues dans la mémoire centrale de l’ordinateur et
qui, autrement, seraient perdues lors de l’ arrêt de cet ordinateur.
Les informations conservées, pour des besoins ultérieurs, peuvent
être des programmes et/ou des données.

cours système d'exploitation fsb Mounir Ounissi 18


Concept de fichier

Vision logique
 Un fichier est un ensemble de données de même nature,
enregistre sur le disque dur sous la forme "nom_du_fichier.ext" ;
 "ext" représente l'extension : un moyen pour reconnaitre le type
de programme avec lequel ce fichier peut être ouvert ;
 Cela ne garantit pas le type de fichier : lorsque l'on change
l'extension on ne change pas le type de fichier!.
Exemple : on peut modifier l’extension d’un fichier « .exe » en un fichier
d’extension « .txt » sans modifier en réalité son type : moyen de déroutement
utilisé dans l’envoi des fichiers exécutables par mail.

cours système d'exploitation fsb Mounir


19
Ounissi
Concept de fichier : Définitions

Vision physique

• L’implantation physique d’un fichier consiste a occuper un


ensemble d’unités d’allocation sur une mémoire secondaire.
• Une unité d’allocation est le plus petit espace de la mémoire
secondaire adressable par le SE.

cours système d'exploitation fsb Mounir


20
Ounissi
Attributs

• Nom du fichier est de taille variable (selon le système


d’exploitation) et compose des lettres de l’alphabet, chiffre
ou/et caractères spéciaux.
Certains systèmes d’exploitation font la distinction entre
caractère majuscule et minuscule d’autre pas. La longueur du
nom et de l'extension peut varier suivant le système
d'exploitation : 8 caractères pour le nom et 3 pour l'extension
sous DOS et Windows 3.1 et 256 caractères pour le nom et
l'extension sous Windows 95, 98,NT et Linux;

cours système d'exploitation fsb Mounir Ounissi 21


Attributs
•La taille définit en octets ;
•Le type : Les fichiers ordinaires contiennent les données des
utilisateurs. Ils peuvent être de différents types (.doc, .html, .exe, …) ;
Les fichiers tubes (pipe) sont utilises généralement pour la
communication entre processus ; Les fichiers systèmes constituent le
noyau du système. Ces fichiers sont places dans le ≪ répertoire
système ≫ ; Les répertoires ou dossiers dans lesquels on peut
regrouper un ensemble de fichiers.
• Les dates : de création, de dernière modification ;
• Les droits d'accès ;

cours système d'exploitation fsb Mounir Ounissi 22


cours système d'exploitation fsb Mounir Ounissi 23
Structuration des fichiers

Un système de fichiers peut avoir a gérer une centaine de fichiers ;


•Il faut les organiser selon une certaine structuration facilitant leur
gestion.
• Les systèmes d’exploitation modernes adoptent une structure
hiérarchique :
Chaque fichier appartient a un groupe et chaque groupe appartient lui-même a
un groupe d’ordre supérieur. Ces groupes sont appelés ≪ répertoire ≫ ou ≪
dossier ≫ ou ≪ catalogue ≫.
• Grace a cette description un système de fichiers peut être assimile a un
arbre dont le point de départ est un répertoire spécifique, racine, qui
représente l’ unité de stockage : physique ou logique (partitionnement,
une racine par partition).

cours système d'exploitation fsb Mounir Ounissi 24


Arborescence Type d'un Système UNIX

cours système d'exploitation fsb Mounir Ounissi 25


Arborescence Type d'un Système Windows

cours système d'exploitation fsb Mounir Ounissi 26


structuration des fichiers

cours système d'exploitation fsb Mounir Ounissi 27


Organisation physique d’un fichier

Les mémoires secondaires sont les supports de stockage servant a


conserver les données de manière permanente, contrairement a la
mémoire vive, qui s'efface a chaque redémarrage de l'ordinateur.
Les mémoires secondaires sont des mémoires non volatiles.
Exemples : disque dur, CD, DVD, disquette, bande magnétique, etc.

cours système d'exploitation fsb Mounir Ounissi 28


Organisation physique d’un fichier : Disque dur

cours système d'exploitation fsb Mounir Ounissi 29


Organisation physique d’un fichier : Disque dur

 Le disque dur est constitue de plusieurs plateaux.


 Chaque plateau contient deux surfaces.
 Chaque surface est composée de plusieurs pistes concentriques.
 Chaque piste est divisée en un ensemble de secteurs.
 Un secteur est généralement de taille 512 octets représentant la
plus petite unité adressable.

cours système d'exploitation fsb Mounir Ounissi 30


Organisation physique d’un fichier : Disque dur

cours système d'exploitation fsb Mounir Ounissi 31


Organisation physique d’un fichier : Disque dur

 Pour référencer ou accéder à un secteur :


le numéro de la tête de lecture (N° du plateau et N° de la
surface),
le numéro de la piste (détermine le déplacement de la tête)
et le numéro du secteur ;
 Il est plus avantageux d’organiser le disque en clusters ;
Un cluster est un ensemble de secteurs consécutifs ou d'un
même cylindre. Lors d’un formatage, le système d’exploitation
définit les clusters et les numérote.
Un numéro par cluster :
On réduit la taille de la structure de données conservant les
numéros d'un secteurs et on allège leur gestion.

cours système d'exploitation fsb Mounir Ounissi 32


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)

cours système d'exploitation fsb Mounir Ounissi 33


Exercice 1

Nous disposons d’un disque dur ayant 1020 cylindres, 63 secteurs


par piste, 512 octets par secteur et 250 têtes, une vitesse de
rotation de 7200 tours/minute, un temps de déplacement moyen de
8ms et un temps de déplacement minimal de 2ms. Calculer la taille
des cylindres, la capacité de chaque plateau et du disque. La
capacité du disque = nombre de cylindres * nombre de
secteurs/piste * nombre d’octets/secteurs * nombre de têtes

Correction

La capacité du disque = 8 Mo environ

cours système d'exploitation fsb Mounir Ounissi 34


Le temps d'accès

Le temps d'accès (ou le temps moyen d'accès) est le temps moyen


entre la demande de lecture d’un secteur et la mise à disposition du
résultat sur l’interface :
Temps d’accès (moyen) = Temps de déplacement moyen + Temps
(moyen) de latence + Temps de lecture d’un secteur
Le temps (moyen) de latence représente la durée moyenne
d’attente une fois sur la bonne piste.

cours système d'exploitation fsb Mounir Ounissi 35


Exercice

Pour la série de disques durs IBM GXP 75, calculer le temps d’accès moyen,
sachant que le temps de déplacement vaut : 8,5 ms, le nombre de cylindres est
16383, le nombre de secteurs est 63, chaque secteur contient 512 octets et la
vitesse de rotation du disque vaut 7200 tours/min.

Temps de latence = demi-durée d’un tour


Temps de latence = (60/7200)/2 = 4,16 ms
Temps de lecture du secteur = (60/7200)/63 = 0,13 ms
Le temps d’accès moyen = 12,79 ms

cours système d'exploitation fsb Mounir Ounissi 36


location de l'espace disque

Un fichier physique est constitué d'un ensemble de blocs


physiques.
La question qui se pose c'est comment allouer des blocs
physiques pour les fichiers.
Différents points doivent être pris en considération pour
l'allocation de l'espace disque : l'optimisation du temps
d'accès, le coût de stockage et l'évolution de la taille des
fichiers (la fragmentation).

cours système d'exploitation fsb Mounir Ounissi 37


Allocation des espaces physiques

 Pour enregistrer un fichier sur une mémoire


secondaire, il faut lui allouer l’espace nécessaire pour son
implantation.

L’allocation d’espace sur un support physique se fait par


bloc : un fichier va occuper un certain nombre de blocs.

 L’algorithme d’allocation consiste à définir la manière


avec laquelle les blocs vont être alloués.

cours système d'exploitation fsb Mounir Ounissi


38
Allocation des espaces physiques

Allocation contiguë : le fichier est enregistré sur des


blocs consécutifs sur le disque
Allocation chaînée : on divise le fichier en plusieurs
blocs qu'on enregistre à des endroits espacés et on les
relie par des liens.
Allocation indexée : les blocs sont indépendants mais
on conserve dans une structure statique ou dynamique
(bloc index)les numéros des blocs appartenant au
fichier

cours système d'exploitation fsb Mounir Ounissi


39
Allocation du disque : le bloc physique

L’unité d’allocation sur le disque dur est le bloc physique,


il est composé de 1 à n secteurs
Ex : 1 bloc =2 secteurs de 512 octets soit 1 Ko
Les opérations de lecture et d’écriture du SGF se font bloc par bloc

cours système d'exploitation fsb Mounir Ounissi 40


Allocation contiguë

Comme son nom l'indique, la méthode d'allocation


contiguë consiste à stocker chaque fichier dans une suite
de blocs contigus. Chaque fichier est ainsi décrit par
l'adresse disque du premier bloc et sa taille. Les adresses
des différents blocs d'un fichier sont obtenues par simple
addition.

cours système d'exploitation fsb Mounir Ounissi 41


Allocation contigüe

Le système va gérer un descripteur de volume par unité de


stockage :
Une table dont le nombre des entrées correspond aux nombre de blocs
constituant l’unité

cours système d'exploitation fsb Mounir Ounissi 42


Allocation contigüe

Allocation des blocs au débuts avec 6 fichiers

En effet, le système de fichiers doit permettre la création,


suppression et extension de fichiers et sera vite confronté au
problème de la fragmentation externe.

Allocation des blocs après suppression de D et F

Lorsque l'espace disque est fort fragmenté il vient à manquer


l'espace pour stocker de nouveaux grands fichiers. Cette
technique oblige à réaliser des déplacements de fichiers pour
faire de la place sur le disque et provoque des délais
d'attente.
cours système d'exploitation fsb Mounir Ounissi
43
fragmentation externe

c’est l’espace perdu en dehors des fichiers. On peut effacer des


données ou supprimer des fichiers ce qui libère des blocs sur le
disque. Au fil de l’utilisation, il peut se créer un grand nombre de
petites zones dont la taille ne suffit souvent pas pour allouer un
fichier mais dont le total correspond a un espace assez volumineux.

cours système d'exploitation fsb Mounir Ounissi


44
Allocation contigüe - Avantages

Peu de déplacements de la tête de lecture du disque lors de la


lecture du fichier ;
Lecture rapide du fichier : accès direct aux blocs constituant le
fichier en un temps déterministe (bonne vitesse de lecture) ;
 Organisation simple.

cours système d'exploitation fsb Mounir Ounissi 45


Allocation contigüe - Inconvénients

Fragmentation du disque lors de l’effacement et de la réécriture des


blocs disque.
Le nouveau fichier peut être plus petit que l’ancien.
Pour éviter la fragmentation, les algorithmes utilisés sont complexes
et coûteux en temps. Il reste toujours de la fragmentation.
Méthode impraticable si les fichiers sont appelés à croître en taille.
Si la taille du fichier augmente, il faut le déplacer dans un autre
emplacement capable d’acquérir tous les blocs du fichier

cours système d'exploitation fsb Mounir Ounissi 46


Allocation chaînée

Un fichier est constitué d’une liste chaînée de blocs du disque.


 Chaque bloc contient une partie de données et un
pointeur (adresse) sur le bloc suivant.
 Le dernier bloc contient un pointeur NULL.
Pour localiser un fichier :
 Il suffit de connaître l’adresse du 1er bloc (principe de la liste
chaînée) ;
On sauvegarde l’adresse du dernier bloc du fichier pour une
possible extension du fichier.

cours système d'exploitation fsb Mounir Ounissi 47


Allocation chaînée (non contiguë)

Le principe est d’allouer des blocs chaînés entre eux aux


fichiers. Un fichier peut désormais être éparpillé sur le disque
puisque chaque bloc permet de retrouver le bloc suivant.
Lorsque le fichier change de taille, la gestion des blocs
occupés est simple. Il n'y a donc aucune limitation de taille, si
ce n'est l'espace disque lui-même.

cours système d'exploitation fsb Mounir Ounissi 48


Allocation chaînée (non contiguë)

cours système d'exploitation fsb Mounir Ounissi 49


Allocation chaînée

L’allocation chaînée résout les problèmes de l’allocation


contiguë. Avec l’allocation chaînée, chaque fichier est une liste
chaînée de blocs de disques. Les blocs de disque peuvent être
dispersés n’importe où sur le disque. Le répertoire contient un
pointeur sur le premier et le dernier bloc du fichier.

cours système d'exploitation fsb Mounir Ounissi 50


Allocation chaînée (non contiguë)

L’allocation chaînée résout les problèmes de l’allocation


contigüe ;
 Il n’y a plus de fragmentation du disque puisque tout bloc libre
peut être utilisé pour satisfaire une autre requête d’allocation ;
 Augmentation ou diminution de la taille du fichier plus
adéquate.
L’allocation ou la libération de blocs se fait au fur et à mesure
des demandes d’ajout ou de suppression.

cours système d'exploitation fsb Mounir Ounissi 51


Allocation chaînée - Inconvénients

 Lecture moins rapide du fichier puisque les blocs d’un fichier


ne sont pas nécessairement sur la même piste ou le même
plateau ;
 On ne peut aller au nième bloc du fichier directement, il
faut parcourir chacun des n-1 blocs pour s’y rendre ;
 Gaspillage d’espace : Partie réservée dans chaque bloc du
disque pour la conservation des pointeurs ;
Si un pointeur est endommagé, toutes les données des blocs
suivants sont perdues.

cours système d'exploitation fsb Mounir Ounissi 52


Allocation chaînée

cours système d'exploitation fsb Mounir Ounissi 53


Allocation chaînée – Inconvénients

Lecture moins rapide du fichier puisque les blocs d’un


fichier ne sont pas nécessairement sur la même piste ou le
même plateau ; On ne peut aller au nième bloc du fichier
directement, il faut parcourir chacun des n-1 blocs pour s’y
rendre ; Gaspillage d’espace : Partie réservée dans chaque
bloc du disque pour la conservation des pointeurs ; Si un
pointeur est endommagé, toutes les données des blocs
suivants sont perdues.

cours système d'exploitation fsb Mounir Ounissi 54


Allocation chaînée indexée

Le principe est de séparer les pointeurs et les données. Il s’agit


d’utiliser une table d’allocation de fichier FAT (file allocation
table). La FAT est constituée de n entrées : Chaque entrée i
correspond au bloc i de l’unité de stockage et contient le bloc
qui suit le bloc i (dans la suite des blocs composant un fichier).
Pour chaque fichier, on mémorise l’adresse du 1er bloc : En
accédant à l’entrée correspondante dans la FAT, on retrouvera
au fur et à mesure la trace de tous les blocs constituant le
fichier.

cours système d'exploitation fsb Mounir Ounissi 55


Allocation chaînée indexée

cours système d'exploitation fsb Mounir Ounissi 56


Allocation chaînée indexée - Avantages

Les blocs de données ne contiennent pas les pointeurs ;


L'accès est direct à n’importe quel bloc sans être obliger de
parcourir tous les blocs du fichier.
Il faut parcourir la table FAT pour trouver l’adresse d’un bloc
donné, cela est réalisé sans faire de nouveaux accès disque.

cours système d'exploitation fsb Mounir Ounissi 57


Allocation par nœud d’information

Chaque fichier est associé à une table qu’on appelle nœud


d’information (i-node).
C’est comme si on a éclaté la FAT en plusieurs petites tables.
Chaque table contient les adresses sur disque des blocs du fichier.
Cette méthode est utilisée dans UNIX.
Chaque nœud contient 13 champs fixes.

cours système d'exploitation fsb Mounir Ounissi 58


Allocation par nœud d’information

Le 11iéme champ contient l’adresse d’un bloc d’adresses.


Ce bloc d'adresses contient des pointeurs (256 adresses de blocs)
vers des blocs de données
C'est la simple indirection
 En cas de besoin, le 12iéme champ pointe sur un bloc d’adresses :
256 pointeurs.
Chaque entrée de ce bloc d’adresses est l’adresse d’un bloc
contenant 256 pointeurs sur des blocs de données.
C'est la double indirection

cours système d'exploitation fsb Mounir Ounissi 59


Allocation par nœud d’information

cours système d'exploitation fsb Mounir Ounissi 60


Allocation par nœud d’information

Trois indirections :
Indirection simple correspond à une taille maximale de fichier
de 266 blocs (chemin 1) ;
Indirection double correspond à une taille maximale de fichier
de 10 + 256 + 2562 = 65802 blocs (chemin 2) ;
Indirection triple correspond à une taille maximale de fichier
de 10 + 256 + 256² + 2563 = 16843018 blocs (chemin 3)

cours système d'exploitation fsb Mounir Ounissi 61


Allocation par nœud d’information - Avantages

Allocation par bloc individuel : tout bloc libre peut être utilisé
pour satisfaire une requête d’allocation;
Accès direct facile (au max. 4 accès disque) :
Si T(F) < 10 blocs (1ére accès disque) ;
Si T(F) > 10 et T(F) ≤ 266blocs (2éme accès disque) ;
Si T(F) > 266 et T(F) ≤ 65802 blocs (3éme accès disque) ;
Si T(F) > 65802 blocs (4éme accès disque).
Seuls les nœuds d’information ouverts sont chargés en
mémoire ;
Adaptés aux disques de très grande capacité.

cours système d'exploitation fsb Mounir Ounissi 62


Allocation par nœud d’information

La structure d’I-Node est utilisée par le système de gestion de fichier ext3fs d’Unix
ou GNU/Linux (ext3fs pour third extented file system). Un nœud d’index est
constitué d’attributs décrivant le fichier ou le répertoire et d’adresses de blocs
contenant des données. Cette structure possède plusieurs entrées, elle permet au
système de disposer d’un certain nombre de données sur le fichier
‐la taille,
l’identité du propriétaire et du groupe : un fichier en Unix est crée par un
propriétaire, qui appartient à un groupe,
‐ Les droits d’accès : pour chaque fichier, Unix définit trois droits d’accès
(lecture (r), écriture (w) et exécution (x)) pour chaque classe d’utilisateurs
(trois types d’utilisateur {propriétaire, membre du même groupe que le
propriétaire, autres}). Donc à chaque fichier, Unix associe neuf droits,
‐ les dates de création, de dernière consultation et de dernière modification, ‐
le nombre de références existant pour ce fichier dans le système,
‐ les dix premiers blocs de données,

cours système d'exploitation fsb Mounir Ounissi 63


Allocation par nœud d’information

La structure d’I-Node est conçue afin d’alléger le répertoire et


d’en éliminer les attributs du fichier ainsi que les informations
sur l’emplacement des données.
Une entrée dans un I-Node d’un répertoire contiendra donc
un nom d’un fichier ou sous-répertoire et l’INode associé.

cours système d'exploitation fsb Mounir Ounissi 64


Allocation par nœud

cours système d'exploitation fsb Mounir Ounissi 65


Allocation par nœud

Exemple
Si on suppose que la taille d’un bloc est de 1Ko, un fichier sous Unix peut avoir la taille
maximale suivante : 10 x 1Ko + 256 x 1Ko + 256 x 256 x 1Ko + 256 x 256 x 256 x 1Ko, ce qui
donne en théorie

plus de 16Go. En réalité, la taille réelle maximale d’un fichier est inférieure à cette valeur
à cause de l’utilisation de pointeurs signés pour le déplacement au sein d’un fichier. Pour
les fichiers les plus longs, trois accès au disque suffisent pour connaître l'adresse de tout
octet du fichier.

cours système d'exploitation fsb Mounir Ounissi 66


FAT

On parle généralement de système de fichiers FAT16 et FAT32.


• Le FAT16 est utilisé par MS-DOS.
En FAT16, les numéros de blocs sont écrits sur 16 bits. Si on
suppose que la taille d’un bloc est 32Ko, la taille maximale
adressables est alors 2Go (216 x 32 Ko = 2097152 Ko = 2Go)
• Le FAT32 est pris en charge par Windows 95 et les versions
qui ont suivis. Les numéros de blocs sont écrits sur 32 bits (en
réalité, sur 28bits, 4 bits étant réservés). Si on suppose que la
taille d’un bloc est de 32 ko, la taille maximale adressable
théoriquement est de 8 To (228 x 32 Ko = 8 To). Toutefois,
Microsoft la limite volontairement à 32 Go sur les systèmes
Windows 9x afin de favoriser NTFS.

cours système d'exploitation fsb Mounir Ounissi 67


FAT

NTFS Le système de fichiers NTFS (New Technology File System)


est utilisé par Windows2000, WindowsNT, Windows XP et
Windows Vista. Il utilise un système basé sur une structure
appelée MFT (Master File Table), permettant de contenir des
informations détaillées sur les fichiers. Ce système permet ainsi
l’utilisation de noms longs, mais, contrairement au système
FAT32, il est sensible à la casse, c’est-à-dire qu’il est capable de
différencier des noms en majuscules de noms en minuscules.

cours système d'exploitation fsb Mounir Ounissi 68


Structure d’une partition NTFS

cours système d'exploitation fsb Mounir Ounissi 69


New Technology File System - NTFS

La limite théorique de la taille d’une partition est de 16


exaoctets (17 milliards de To), mais la limite physique d’un
disque est de 2To.
L’accès aux fichiers sur une partition NTFS est plus rapide que
sur une partition de type FAT car il utilise un arbre binaire
performant pour localiser les fichiers.
Au niveau de la sécurité, NTFS permet de définir des attributs
pour chaque fichier.
La version 5 de ce système de fichiers amène des performances
accrues et des quotas de disque par volume définis pour
chaque utilisateur

cours système d'exploitation fsb Mounir Ounissi 70


New Technology File System - NTFS

• Coté performances, l’accès aux fichiers sur une partition NTFS est
plus rapide que sur une partition de type FAT car il utilise un arbre
binaire performant pour localiser les fichiers. La limite théorique
de la taille d’une partition est de 16 hexa octets (17 milliards de
To), mais la limite physique d’un disque est de 2To (va encoder en
64 bits
264 = 18 446 744 073 709 551 616 = 16 EiB (1 exbibyte = 1EiB = 260
byte).
C’est au niveau de la sécurité que NTFS prend toute son
importance, car il permet de définir des attributs pour chaque
fichier

cours système d'exploitation fsb Mounir Ounissi 71


New Technology File System - NTFS

Avantages :
La fragmentation n'influe pas sur les performances du système ;
La complexité de l'arborescence des fichiers et du nombre de
fichiers n'affectent pas les performances ; L'accès rapide au
fragment des fichiers.
Inconvénients :
La taille de la mémoire ne peut pas être inférieur à 64 mégaoctets ;
Les disques lents sans contrôle du bus ralentissent énormément les
performances du système ;
Si le disque est occupé entre 80 % - 90 % de sa taille totale, les
performances du systèmes sont ralenties.

cours système d'exploitation fsb Mounir Ounissi 72


EXERCICE

On considère un fichier de type UNIX. Le fichier a une taille de 16 Moctets. Les blocs
disque sont de 1024 octets. Un numéro de bloc occupe 2 octets.
Question 1 : Quel est le nombre de blocs de données du fichier ?

Question 2 : Combien comporte-t-il de blocs d’adresses ? Représentez sur un


schéma l’allocation des blocs de données du fichier.

cours système d'exploitation fsb Mounir Ounissi 73


Correction

Taille_fichier / Taille_bloc_disque = 24 * 220 / 210 = 214 = 16384 blocs de données.

cours système d'exploitation fsb Mounir Ounissi 74


Correction

Un bloc d’adresse comporte : Taille_bloc_disque / Taille_numero_bloc = 1024 / 2 = 512


entrées.
Selon le dessin ci-dessous, l’allocation est réalisée comme suit :

cours système d'exploitation fsb Mounir Ounissi 75


Correction

10 blocs de données sont en accès direct pointés par les 10 premières entrées de la table de
l’inode.
Il reste à allouer 16384 – 10 = 16374 blocs de données.
Le niveau INDIRECT_1 permet d’allouer 512 blocs. Il reste 16374 – 512 = 15862 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 5122 blocs de données ce qui est
largement supérieur à 15862. Tous les blocs restants sont donc repérés à partir de ce niveau. Il
faut déterminer jusqu’à quelle profondeur.
On peut écrire que 15862 = 512 * 30 + 502, nécessite donc 31 blocs d’index INDIRECT_2_i
(30 blocs d’index INDIRECT_2_i pleinement utilisés et 1 dernier bloc d’index
INDIRECT_2_31 avec uniquement les 502 premières entrées d’utilisées). Nous avons donc à
ce niveau 32 blocs d’index (31 blocs d’index INDIRECT_2_i + 1 bloc d’index
INDIRECT_2).
Au total 33 blocs d’adresses (ou d’index) sont donc nécessaires.

cours système d'exploitation fsb Mounir Ounissi 76


Correction

cours système d'exploitation fsb Mounir Ounissi 77


Unités Le bit est la plus petite quantité d’information, il peut prendre deux valeurs (0
ou 1). Un octet est composée de 8 bits (un byte correspond généralement a 8 bits,
mais pas toujours). Attention, il y a une distinction entre compter en base 10, et
compter en base 2 ! Par exemple, en base 10 on a un kilo de 103 = 1 000, et en base
2 on a un kibi (kilo binaire) de 210 = 1 024. Les normes internationales sont les
suivantes.

cours système d'exploitation fsb Mounir Ounissi 78


cours système d'exploitation fsb Mounir Ounissi 79
cours système d'exploitation fsb Mounir Ounissi 80
Bibliographie
1. « Systèmes d'exploitation » par Andrew Tanenbaum – cet ouvrage est régulièrement
réédité. Référence incontournable (pour les cours de système d'exploitation de première,
deuxième et ...).
2. « Architecture et technologie des ordinateurs » par Paolo Zannella, Yves Ligier –
DUNOD 2002 (ISBN 2-10-003801-X)

cours système d'exploitation fsb Mounir Ounissi 81

Vous aimerez peut-être aussi