Transcript
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 1/27
Introduction auSystème d’exploitation
ENSA de Fès
CP II2011
Younes Lakhrissi
Système d’exploitation CP2 – [ Y. Lakhrissi ] 2
Plan du cours
I. Généralités
II. Gestion des processus
III. Gestion des fichiers
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 2/27
Chapitre I
Généralités
1. Introduction au systèmes d’exploitation
2. Notions sur les partitions & Lancement d’unsystème d’exploitation
Système d’exploitation CP2 – [ Y. Lakhrissi ] 4
Rappel : Fonctionnement de l’ordinateur
PROCESSEUR :Lecture del’EEPROM
(programme BIOS)
BIOS :
Liste les éléments d’E/S dont leSystème d’Exploitation et laBase de registre
Chargementdu S.E. Envoid’information
à la RAM
Mise soustension del’ordinateur
Le travail peutcommencer :traduction enactionsélémentaires à
partir duclavier ou de lasouris.
I-1
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 3/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 5
Le système d’exploitation
Un système d'exploitation (Operating System en anglais : OS) est unprogramme, un ensemble cohérent de logiciels permettant d'utiliser unordinateur et tous ses éléments.
Il est composé d’un noyau et d’un ensemble d'outils système.
Le BIOS lance le système d’exploitation.
Le système d’exploitation prend la main à la suite du BIOS.
I-1
Système d’exploitation CP2 – [ Y. Lakhrissi ] 6
Types d'OS
Différentes catégories des OS
systèmes "généralistes" : Windows, Linux, Unix, MacOS, …
systèmes "serveur" : OS/390, Windows (server edition), Linux entreprise…
systèmes embarqués : PalmOS, Symbian, …
systèmes temps réel : QNX (à base d’UNIX), Windows Mobile, RT Linux, …
systèmes pour carte à puce : Java Card…
Dans ce cours :
étudier les "grands principes" applicables à tous les OS
applications : le noyau UNIX
I-1
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 4/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 7
Rôles du système d'exploitation
1 - Interagir avec le monde extérieur Exécution des programmes utilisateur. capable de gérer des entrées (au clavier, par le réseau), lire le résultat
(l’imprimer à l‘écran, sur papier, etc.)
2 - Effectuer les tâches de bas niveau Interaction avec les périphériques Pas besoin de programmer le protocole d'interaction pour imprimer un document
ou pour envoyer un flux à l’écran.
3 - Protéger la machine Contre des ordres corrects non voulus. (effacer tout le disque par exemple) Contre des ordres incorrects envoyés aux périphériques. Au pire, votre programme plante, pas la machine.
I-1
Système d’exploitation CP2 – [ Y. Lakhrissi ] 8
Rôles du système d'exploitation
4 - Cacher les détails de votre machine cache la complexité de gestion des taches, donne l'illusion que toutes les machines sont identiques, rend les programmes (relativement) portables.
5 - Partager la machine Le système d'exploitation donne l'illusion que
le programme tourne seul sur la machine. l'utilisateur est seul sur la machine.
I-1
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 5/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 9
Scénario NominalI-1
Système d’exploitation CP2 – [ Y. Lakhrissi ] 10
Services d'un OS
1 - gestion de processus(processus = un programme enexécution avec son contextespécifique) création des processus gestion de leur cycle de vie,
ordonnancement, … communication inter-processus (IPC)
…
2 - gestion de la mémoire allocation d’espaces mémoire aux
processus, gestion de l'espace d'adresse virtuel,
…
I-1
Noyau du Système d’exploitation
Matériel
Gestion des fichiers
Gestion de la mémoire
Application (Logiciel, p.ex. Microsoft Word)
PilotePilote
Noyau du Système d’exploitation
Matériel
Gestion des périphériques (entrées/sorties)
Gestion des fichiers
Gestion de la mémoire
Logiciel d’application
Gestion des processus
PilotePilotePilote
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 6/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 11
Services d'un OS
3 - gestion des entrées/sorties (E/S) terminaux, périphériques de stockage, cartes réseau, cartes graphiques, etc.
aspects bas niveau (gestion contrôleurs, interruption, ports,…)
aspects haut niveau :
gestion des fichiers
organisation des disques et autres stockages externes, accès aux données,ordonnancement des requêtes…
gestion du réseau
couches de protocole, …
gestion de l'IHM (Interface Homme Machine)
terminaux texte, système de fenêtres, …
4 - services divers
sécurité et cryptographie, encodage / décodage multimédia, …
I-1
Système d’exploitation CP2 – [ Y. Lakhrissi ] 12
Chapitre I - Généralités
1. Introduction au systèmes d’exploitation
2. Notions sur les partitions & lancement d’unsystème d’exploitation
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 7/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 13
Propriétés des partitions
Une partition est caractérisée par plusieurs propriétés :
Les partitions amorçables, cela signifie qu'elle contient un système d'exploitation et que son secteur boot
peut être exécuté pour démarrer le système.
Une partition peut être visible ou cachée. Une partition cachée ne sera pas vue par le système d'exploitation exécuté.
Cacher une partition peut servir à avoir plusieurs systèmes sur le même PC.
On distingue deux types de partitions : Primaires et Logiques
I-3
Système d’exploitation CP2 – [ Y. Lakhrissi ] 14
Partitions primaires et partitions logiques
On distingue deux types de partitions :
1 - Les partitions primaires Un disque dur peut avoir jusqu'à 4 partitions primaires. Ces partitions sont
reconnues par le BIOS. imposée par l'architecture du PC
Cette limite est très contraignante. Par exemple, comment fait-on pour pouvoirutiliser 10 partitions sur un seul disque ?
2 - Les partitions logiques Une partition étendue est une partition primaire parmi les quatre possibles, qui
contient elle-même d'autres partitions. On peut les considérer comme des partitions secondaires. On les appelle
lecteurs logiques. Elles peuvent toutes avoir des caractéristiques différentes : tailles différentes, et
systèmes de fichiers différents.
I-3
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 8/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 15
Exemple de partitionI-3
Système d’exploitation CP2 – [ Y. Lakhrissi ] 16
Le MBR (Master Boot Record)
Définition Les premiers secteurs du disque physique sont occupés par le MBR (Master Boot Record). C'est une zone qui se situe avant la première partition physique, et qui est généralement très
petite (quelques Ko seulement). Cette zone a un rôle vital pour le disque dur. Elle est partagée en deux parties :
La Table des Partitions
C'est là que sont enregistrées les informations concernant les quatre partitions primaires :emplacement, taille, propriétés (cachée, amorçable). Si on efface ces données, le PC ne saitplus où sont situées les quatre partitions, et toutes les données sont donc perdues, bien queles données elles mêmes n'aient pas été effacées.
C'est de cette table des partitions que vient la limite des 4 partitions primaires possibles.
Le système d'amorçage C'est un programme exécuté par le BIOS au démarrage du PC qui a pour rôle de lancer le
système d'exploitation du PC. Pour cela, le programme stocké dans le MBR exécute enréalité le secteur boot de la partition principale où est installé le système d'exploitation àdémarrer.
I-3
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 9/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 17
Secteur boot d'une partition
Chaque partition contient un secteur de boot sur ses premiers secteurs. ilcontient deux parties :
1 - Des données qui indiquent les propriétés de la partition, comme par exemple le nom de
volume, ou le système de fichiers.
2 - Un programme d'amorçage qui démarre le système d'exploitation si la partition est amorçable. Si la partition n'est pas amorçable, elle contient généralement un programme qui
affiche un message d'erreur comme "Pas de système d'exploitation", au cas oùcette partition serait exécutée.
I-3
Chapitre II
Gestion des processus
1. Présentation des processus2. Ordonnancement
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 10/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 19
Définition d’un Processus
processus = programme exécutable+
ses données et sa pile d'exécution+
son compteur ordinal+
son pointeur de pile et les autres registres
II-
Système d’exploitation CP2 – [ Y. Lakhrissi ] 20
Etats d’un processus
•J’attends le Processeur•Je suis PRÊT•Je dispose de TOUTES lesRessources nécessaires
•Je suis ELU•Je dispose du PROCESSEUR•Je suis le Seul
•J’attends un événement•J’attends une ressource
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 11/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 21
Etats d’un processus
Transition 1 : création du processus Activable par une primitive du SE exemples :
fonctions fork() / exec() de UNIIX, fonction CreateProcess(), CreateThread() de l'API W iin32
crée une nouvelle entrée dans la Table des Processus
Transition 2 : Activable Actif décidé par le SE un module spécial du noyau :
l’ordonnanceur ou commutateur de tâches ou scheduler
ou préempteur travaille périodiquement implique une commutation de contexte : restauration
Système d’exploitation CP2 – [ Y. Lakhrissi ] 22
Etats d’un processus
Transition 3 : Actif Activable Réquisition du CPU décidée et réalisée par l’ordonnanceur implique une commutation de contexte : sauvegarde
Transition 4 : Actif Bloqué
par une primitive du système Exemple :
opération de lecture attente des données attente de l’évènement FIN d’entrée/sortie événement généré par le contrôleur d’E/S en général, une IT
implique une commutation de contexte : sauvegarde
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 12/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 23
Etats d’un processus
Transition 5 : Bloqué Activable déblocage par un événement arrivée de la condition attendue, exemple :
fin d’Entrée-Sortie, ... libération de la ressource par un autre processus début de communication avec un autre processus
pas de commutation de contexte
Transition 6 : fin du processus par une primitive du système
appel implicite : fin du programme appel explicite : fonction exit(n) dans UNIIX
par un événement Décision du SE (en cas d’erreur) ex :: division par zéro
Décision de l’usager propriétaire du processus CTRL - C Décision de l’Administrateur Système, ex: commande Unix kill n°Processus
Système d’exploitation CP2 – [ Y. Lakhrissi ] 24
Process Control Bloc
Définition Chaque processus est représenté dans le SE par un bloc appelé process control
bloc. Le PCB est un enregistrement contenant des informations associées à unprocessus.
Parmi ces informations :
L’état du processus (bloqué, prêt, élu)
Le compteur ordinal (indique l’adresse de la prochaine instruction à êtreexécutée par ce processus)
L’allocation mémoire
La liste des fichiers ouverts
Les périphériques associés au processus
…
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 13/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 25
Chapitre II - Gestion des processus
1. Présentation des processus
2. Ordonnancement
Système d’exploitation CP2 – [ Y. Lakhrissi ] 26
Ordonnancement des Processus
L'ordonnancement est à la base de la multiprogrammation
La plupart des ressources de l'ordinateur font l'objet de l'ordonnancementavant leur utilisation
Exemple : plusieurs processus sont prêts à être exécutés.
Lequel il faut choisir et selon quel critère?
Besoin de définir les critères d’ordonnancement !
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 14/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 27
Critères d’ordonnancement
utilisation CPU : le processeur est une ressource chère, donc il faut l’utiliser au maximum
temps de réponse : en mode interactif, le temps de réponse mesure le temps qui s’écoule entre
l’émission d’une requête et le début de la réponse par le système
temps d'attente du processus : temps que passe un processus dans la queue des processus prêts
temps de retournement (turn around time) : correspond au temps depuis la soumission du travail jusqu’au résultat. C’est la
somme des temps pour avoir la mémoire + temps passé dans la queue des
processus prêts + temps des I/O + temps CPU
Système d’exploitation CP2 – [ Y. Lakhrissi ] 28
Types d’ordonnanceur
Non préemptif :
Sélectionne un processus qui s’exécute jusqu’à blocage ou libération duprocesseur.
Préemptif :
Sélectionne un processus qui s’exécute pendant un délai déterminé.
Si le processus est toujours en cours après ce délai alors il est suspendu et unautre est choisi pour prendre sa place.
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 15/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 29
JOB Temps d’exécution
1 202 10
3 4
Quelques Algorithmes d’Ordonnancement
Algo 1- Premier Arrivé Premier Servi Le premier processus qui a besoin du CPU est servi C’est Un algorithme simple mais il n’est pas performant. L’implantation de cet algorithme peut se faire à l’aide d’une queue FIFO
Quand le CPU est libéré, on prend le processus situé à la tête
Exemple : est ce que l’ordre d’exécution des processus a une influence surle temps moyen d’exécution
Système d’exploitation CP2 – [ Y. Lakhrissi ] 30
Quelques Algorithmes d’Ordonnancement
Si on exécute les travaux dans l ’ordre 1,2,3 alors : Le Job 1 s’exécute en 20 unités Le Job 2 s’exécute en 20+10 = 30 unités Le Job 3 s’exécute en 20+10+4 = 34 unités Le temps moyen d’exécution est alors (20+30+34)/3 = 28 unités Temps d’attente : 16
Si on exécute les travaux dans l ’ordre 2,3,1 Le temps moyen d’exécution est (10+14+34)/3 = 19 unités Temps d’attente : 8
Si on exécute les travaux dans l ’ordre 3,2,1 Le temps moyen d’exécution est (4+14+34)/3 = 17 unités Temps d’attente : 6
Avez-vous une Conclusion ? … le plus court job d’abord
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 16/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 31
Quelques Algorithmes d’Ordonnancement
Algo 2 - Le Plus Court Job d'abord
L’unité centrale est affectée au job le plus court.
Cet algorithme est optimal au sens du temps moyen d’attente
La difficulté réside dans le fait de connaître, à priori, la durée CPU d’un job.
(job limit ou estimations se basant sur le comportement antérieur des processus)
Système d’exploitation CP2 – [ Y. Lakhrissi ] 32
Quelques Algorithmes d’Ordonnancement
Algo 3 - Ordonnancement avec priorité
On associe une priorité à chaque job et la CPU est associée au job qui a la plushaute priorité. Deux job ayant la même priorité sont traités selon FIFO.
Dans le cas du plus cout job d’abord, la priorité est l’inverse du temps CPU. Plusle temps CPU est grand, plus la priorité est basse.
D’autres facteurs peuvent être utilisés pour calculer la priorité tels que : lamémoire nécessaire, le nombre de fichiers ouverts, …
Les processus qui ont une faible priorité risquent d’attendre longtemps avantd’avoir la CPU.
Une solution à cette situation est la technique du vieillissement (« AGING ») quiconsiste à augmenter graduellement la priorité des jobs qui attendent dans lesystème pendant longtemps.
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 17/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 33
Quelques Algorithmes d’Ordonnancement
Algo 4 - Ordonnancement Circulaire ( Tourniquet / Round – Robin)
C’est un algorithme qui est utilisé en particulier pour les travaux« temps partagé ».
On définit une unité de temps appelée quantum.
La liste des jobs prêts est traitée comme une liste circulaire.
L’Ordonnanceur parcourt la queue des jobs et alloue la CPU à chaqueprocessus pour une durée qui peut atteindre le quantum.
Système d’exploitation CP2 – [ Y. Lakhrissi ] 34
TD
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 18/27
Chapitre III
Gestion de Fichiers
1. Introduction
2. Types d’allocation de l'espace disque aux fichiers3. Exemples de SGF
Système d’exploitation CP2 – [ Y. Lakhrissi ] 36
Les Systèmes de Gestion de Fichiers
La partie d'un système d'exploitation qui est consacrée à : l'organisation logique d'un fichier, la représentation de l'information, la réalisation des fonctions d'accès, la protection et la sécurité.
est appelée Système de Gestion de Fichiers (SGF)
Fichier Un fichier est une collection organisée d'informations de même nature.
Un fichier est constitué d'un ensemble de blocs (enregistrement physique,granule, unité d'allocation, "block") situés en mémoire secondaire.
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 19/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 37
Un utilisateur n'est pas concerné par l'emplacement physique d'unfichier ou par la méthode de gestion des blocs libres d'un disque.
il s'intéresse à : la manière de créer et de détruire un fichier, comment accéder aux fichiers pour les consulter ou les modifier, comment protéger ses fichiers contre les accès non autorisés, ...
L'utilisateur donne un nom logique à chacun de ses fichiers et c'est leSGF qui se charge de faire la correspondance entre le nom d'un fichieret son implantation sur un support physique.
Interface utilisateur d'un SGF
Système d’exploitation CP2 – [ Y. Lakhrissi ] 38
Les blocs du disque
Les fichiers de données sur les disques se répartissent dans des blocs de taillefixe correspondant à des unités d’entrées-sorties du contrôleur de cepériphérique.
La lecture ou l’écriture d’un élément d’un fichier implique le transfert du blocentier qui contient cet élément.
Les disques peuvent être formatés avec une certaine taille de blocs. les tailles courantes de blocs = 512 octets, 1Ko, 2Ko, 4Ko jusqu’à 16Ko. Si un disque comprend beaucoup de fichiers de petite taille et si les blocs sont de
grandes dimensions, l’espace gaspillé est considérable.
Taille minimale d’un fichiers = 1 bloc.
Choix de Taille du bloc = compromis entre la vitesse d’accès aux éléments desfichiers et l’espace perdu sur le disque.
Pour un accès rapide, … blocs de grande ou petite taille ?
⇒ blocs de grande taille.
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 20/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 39
Gestion de l'espace libre
Dans un système informatique, les fichiers sont crées ou effacés assezfréquemment.
L'espace libéré lorsqu'on efface un fichier est réutilisé pour de nouveaux fichiers.Le système maintient alors une trace de tous les blocs libres du disque.
La création d'un nouveau fichier nécessite la recherche dans les blocs libres d'unespace suffisant pour contenir ce fichier.
Système d’exploitation CP2 – [ Y. Lakhrissi ] 40
Gestion de l'espace libre
Méthodes de gestion de l’espace libre L'espace libre d'un disque peut être géré par une table de bits. Chaque bloc est
représenté par un bit qui est à 0 si le bloc est libre, à 1 s'il est occupé.
Une autre manière de faire est de chaîner les blocs libres et en ayant unpointeur vers le premier bloc libre. Cette manière n'est pas très efficace car pourparcourir la liste, il faut lire chaque bloc (donc beaucoup de temps CPU).
Une alternative est de mémoriser les adresses de n blocs libres dans lepremier bloc libre. Ainsi les adresses d'un grand nombre de blocs librespeuvent être trouvées rapidement.
Adresse 1erbloc libre
Bloc libreBloc libre
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 21/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 41
Allocation de l'espace disque aux fichiers
Implantation physique des fichiers en blocs fichier = une liste de blocs contenant ses données. Les fichiers conservent l’ensemble de leurs blocs suivant trois méthodes
3 méthodes sont largement utilisées pour l'allocation de l'espace disque :
1 - l'allocation contiguë,
2 - l'allocation chaînée,
3 - l'allocation indexée.
Système d’exploitation CP2 – [ Y. Lakhrissi ] 42
Allocation de l'espace disque aux fichiers
1 - L'allocation contiguë
chaque fichier occupe un ensemble de blocs dont les adresses se suivent.
Dans ce type d'allocation, un fichier est défini par son adresse de départ et salongueur. cette information est mémorisée dans l'entrée du répertoire du fichier.
Pour l'accès direct à un bloc K d'un fichier qui commence au bloc B, on peutaccéder facilement au bloc B+K.
Problèmes de ce type d'allocation
déterminer l'espace nécessaire pour un fichier. L'estimation de l'espacenécessaire lors de la création d'un fichier est difficile.
Si on alloue une petite taille, on risque d'avoir des problèmes lorsqu'on veut faire uneextension du fichier. Le système peut alors copier ce fichier dans un espace plus grandmais cela ralentit le traitement.
Si on alloue une grande taille, il y a perte de la place même si cette taille va être atteinteau cours de l'évolution du fichier.
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 22/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 43
Allocation de l'espace disque aux fichiers
2 - L'allocation chaînée
Descriptif
Dans ce cas, chaque fichier est une liste chaînée de blocs de disque. Les blocsd'un fichier peuvent être dispersés sur tout le disque.
Un fichier est repéré par son nom et un pointeur sur le premier bloc du fichier.
On peut utiliser aussi un pointeur sur le dernier bloc pour faciliter l'extension.
Pour ajouter un nouveau bloc, il suffit de prendre un bloc de la liste des blocslibres et le chaîner au fichier.
Système d’exploitation CP2 – [ Y. Lakhrissi ] 44
Allocation de l'espace disque aux fichiers
2 - L'allocation chaînée
Problèmes
l'accès direct n'est pas efficace car il faut plusieurs accès disques pour lire le ième
bloc.
Pour atteindre un élément sur le bloc n le système doit parcourir les n-1 blocsprécédents.
la fiabilité. Que se passe-t-il si un pointeur est endommagé.
Pour résoudre ce problème on peut utiliser des listes doublement chaînées oubien mémoriser dans chaque bloc le nom du fichier et son numéro relatif.
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 23/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 45
Allocation de l'espace disque aux fichiers
3 - L'allocation Indexée
L'allocation indexée résout le problème de l'accès direct en mettant tous lespointeurs dans un bloc appelé : BLOC INDEX.
Chaque fichier a son bloc index qui contient des adresses de blocs. La ième
entrée du bloc index pointe vers le ième bloc du fichier.
L'entrée du répertoire du fichier contient l'adresse du bloc index.
on est obligé d'avoir un bloc index même si le fichier n'a qu'un ou deux blocs.D'où perte de place.
Une variante de l’allocation Indexée : l’allocation séquentielle indexée
Système d’exploitation CP2 – [ Y. Lakhrissi ] 46
3’ - Allocation séquentielle indexée
Allocation de l'espace disque aux fichiers
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 24/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 47
Les Répertoires
La plupart des systèmes d’exploitation adoptent une structure hiérarchique desfichiers. Chaque fichier appartient à un groupe d’autres fichiers et chaque groupeappartient lui même à un groupe d’ordre supérieur. On appelle ces groupes, desrépertoires ou des dossiers.
Le schéma de la structure générale d’un système de fichiers est un arbre, forméau départ d’un répertoire « racine » recouvrant des périphériques et notammentun ou plusieurs disques.
Dans chacun des répertoires on pourra trouver d’autres répertoires ainsi que desfichiers de données ordinaires.
Système d’exploitation CP2 – [ Y. Lakhrissi ] 48
Les répertoires sont, eux aussi, des fichiers, constitués des noms et desréférences de tous les fichiers qu’ils contiennent.
Cette structure permet de construire l’arborescence du système.
Pour désigner un fichier quelconque, il suffit de spécifier l’enchaînement desrépertoires nécessaires à son accès, à partir de la racine.
Dans le système Unix, les répertoires de cet enchaînement sont séparés par /
Dans le système DOS, par \
Les répertoires et l’adressage d’un fichier
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 25/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 49
Dans le système Unix, chaque répertoire contient aussi sa propre référence,ainsi que celle du répertoire immédiatement supérieur.
« . » désigne le répertoire courant, « .. » désigne le répertoire supérieur.
L’inclusion de ces deux références permet de désigner un fichier quelconque,relativement au répertoire courant.
Les répertoires et l’adressage d’un fichier
Système d’exploitation CP2 – [ Y. Lakhrissi ] 50
Exemples de SGF : MS-DOS
MS-DOS utilise des listes chaînées.
Il conserve le premier bloc de chacun des fichiers dans son répertoire. Il optimise ensuitel’accès des blocs suivants en gardant leurs références dans une Table d’Allocation deFichiers (FAT).
Chaque disque dispose d’une FAT qui possède autant d’entrées qu’il y a de blocs sur ledisque.
Chaque entrée de FAT contient le numéro du bloc suivant.
Exemple
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15X X EOF 13 2 9 8 L 4 12 3 L EOF EOF L BE
XX = taille du disque,
L = bloc libre
BE = bloc endommagé,
Le fichier commençant au bloc 6, sera constitué des blocs : 6, 8, 4 et 2.
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 26/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 51
Les répertoires du MS-DOS possèdent une entrée par fichier Structure d’une entrée :
Le numéro du 1er bloc, cluster dans la terminologie MS-DOS, indexe la Fatet permet de retrouver la suite des éléments du fichier.
TailleN°du 1erbloc
DateHeureRéservéAttributsExtensionNom dufichier
Exemples de SGF : MS-DOS
Système d’exploitation CP2 – [ Y. Lakhrissi ] 52
Exemples de SGF : UNIX
Unix répertorie chaque fichier par un numéro unique pour tout un disque.
À chaque numéro, correspond un enregistrement = un nœud d’index (i-node).
i-node comportant un nombre fixé de champs.
13 de ces champs, mémorisent l’emplacement physique du fichier.
Les 10 premiers champs contiennent les numéros des 10 premiers blocs dufichier.
…….bloc n°3bloc n°2bloc n°1Nœud d’index
Pointeur à triple indirectionPointeur à double indirectionPointeur à simple indirection
Bloc n°13Bloc n°12Bloc n°11
5/14/2018 SysExploitation CP2 [Lakhrissi] - slidepdf.com
http://slidepdf.com/reader/full/sysexploitation-cp2-lakhrissi 27/27
Système d’exploitation CP2 – [ Y. Lakhrissi ] 53
i-node
Pour les fichiers de plus de 10 blocs, on UTILISE des indirections.
Le bloc n°11 contient le numéro d’un bloc composé lu i-même d’adresses deblocs de données. Si les blocs ont une taille de 1024 octets et si ils sontnumérotés sur 4 octets, le bloc n°11 pourra désigne r jusqu’à 256 blocs. Au total,le fichier utilisant la simple indirection aura alors une taille maximale de 266 blocs(10 + 256).
Le bloc n°12 contient une adresse, un pointeur, à do uble indirection,
Le bloc n°13 contient un pointeur à triple indirecti on.
Avec l’exemple ci-dessus, un fichier peut avoir une taille maximale de ??
16 Go
Exemples de SGF : UNIX
Système d’exploitation CP2 – [ Y. Lakhrissi ] 54
Exemples de SGF : UNIX
Les répertoires d’Unix disposent d’une entrée par fichier. Chaque entrée possède au moins les deux champs : le numéro du nœud d’index
et le nom du fichier.
Par exemple :
doc1371
tp1124
..95
.78
top related