Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université



Documents pareils
6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

1. Systèmes d entrée/sortie 2. Systèmes de fichiers 3. Structure de mémoire de masse (disques)

Chapitre 3 : Système de gestion de fichiers

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Structure fonctionnelle d un SGBD

Système de Gestion de Fichiers

Installation d un poste i. Partage et Portage & permissions NTFS

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

SYSTÈME DE GESTION DE FICHIERS

Partie 7 : Gestion de la mémoire

EX4C Systèmes d exploitation. Séance 14 Structure des stockages de masse

Cours de Système : Gestion de Fichiers

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

LES SYSTÈMES DE FICHIERS

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

TD 1 - Installation de système UNIX, partitionnement

Systèmes informatiques

ASR3. Partie 4 Le système de fichier. Arnaud Clérentin, IUT d Amiens, département Informatique

Fonctions De Base D un Système D Exploitation. I- introduction : II- Gestion des processus :

Unix/Linux I. 1 ere année DUT. Université marne la vallée

Boot Camp Guide d installation et de configuration

Retrouver de vieux programmes et jouer sur VirtualBox

PARAGON Disk Wiper. Guide de l utilisateur. Paragon Technology GmbH, System Programmierung. Copyright Paragon Technology GmbH

CH.3 SYSTÈMES D'EXPLOITATION

La gestion des disques

TIC. Tout d abord. Objectifs. L information et l ordinateur. TC IUT Montpellier

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

Leçon 1 : Les principaux composants d un ordinateur

La mémoire. Un ordinateur. L'octet. Le bit

Cours Informatique 1. Monsieur SADOUNI Salheddine

Acronis True Image 10 Home Edition

Systemes d'exploitation des ordinateurs

Prise en main. Norton Ghost Pour trouver des informations supplémentaires. A propos de Norton Ghost

Il est courant de souhaiter conserver à

Présentation du module Base de données spatio-temporelles

Administration de Parc Informatique TP07 : Installation de Linux Debian

Linux Partition Mini-HOWTO

Gestion répartie de données - 1

Tutorial Terminal Server sous

Windows 8 Installation et configuration

Introduction aux Systèmes et aux Réseaux, Master 2 CCI

Manuel du logiciel PrestaTest.

Guide pour l Installation des Disques Durs SATA et la Configuration RAID

Informatique pour scientifiques hiver Plan général Systèmes d exploitation

Cours Bases de données

Sécurisation de Windows NT 4.0. et Windows 2000

Activité : TP Durée : 6H00. Un PC d assemblage de marque NEC Un casque avec micro Une clé USB. Un CD de Windows XP professionnel

LE DISQUE DUR : IDE (Integrated Device Electronique) : La nouvelle référence.

INSTALL ATION D UNE D I S T RIBUTION

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

WINDOWS 2000 SERVEUR

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Boîtier disque dur SATA 3,5 pouces Fonction économie d énergie

TP3 : Manipulation et implantation de systèmes de fichiers 1

LA mémoire principale est le lieu où se trouvent les programmes et les

MODULE : MAINTENANCE DES STATIONS AVEC OSCAR

Installation d un Contrôleur de Domaine Windows Server 2003

LiveUSB clefisn. Meilland jean claude et Kbida Abdellatif. 16 septembre 2012

Tsoft et Groupe Eyrolles, 2005, ISBN :

AOLbox. Partage de disque dur Guide d utilisation. Partage de disque dur Guide d utilisation 1

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

Sauvegarde de postes clients avec BackupPC

Gérard Castagnoli OSU PYTHEAS 25/06/2013 VVT2013 1

Ordinateur Logiciel Mémoire. Entrées/sorties Périphériques. Suite d'instructions permettant de réaliser une ou plusieurs tâche(s), de résoudre un

Administration de systèmes

Commandes Linux. Gestion des fichiers et des répertoires. Gestion des droits. Gestion des imprimantes. Formation Use-IT

Partie théorique (20 points) :

Comment configurer Kubuntu

Guide de l administrateur DOC-OEMCS8-GA-FR-29/09/05

Introduction...3. Objectif...3. Manipulations...3. La Sauvegarde...4. Les différents types...4. Planification...4. Les outils...5

Démarrer et quitter... 13

Le stockage. 1. Architecture de stockage disponible. a. Stockage local ou centralisé. b. Différences entre les architectures

Windows Internet Name Service (WINS)

OSCAR Un outil gratuit libre d images disque

Optimisations des SGBDR. Étude de cas : MySQL

Artica. La déduplication. Révision Du 08 Février 2011 version

Windows avancé7préface de SANSTABOO. Louis-Guillaume Morand. & Thomas Garcia. 2 e édition. Lucas Riedberger

Windows 7, Configuration

Windows Server 2012 R2

40èmes Olympiades des métiers

Sauvegardes sous Mac OS X

ésylog, direction technique Esylog_PeerBackup outil de sauvegarde individuelle mails & fichiers personnels documentation technique

Rappels sur les fichiers

CESI Bases de données

Travailler à l'ensimag avec son matériel personnel

Nouvelles stratégies et technologies de sauvegarde

Personnes ressources Tice. Académie de Rouen

Moteur de réplication de fichiers BackupAssist

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

LES OLYMPIADES DES METIERS. paration aux sélections s. Guide de préparation. régionalesr. Métier n 39 : GESTION DES RESEAUX INFORMATIQUES

Programmation C. Apprendre à développer des programmes simples dans le langage C

_ PARAMETRE DU COMPTE _ ACCEUIL. 1 ere Etape «Créer un compte principal» Créer un compte secondaire. Ouvrir un compte principal

PPE 1 PRISE EN MAIN DE VMWARE VSPHERE 5.5 & CONFIGURATION D UNE MACHINE VIRTUELLE

VMWare. Vmware: machine virtuelle Un véritable pc avec : VmWare

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

CREATION D UN WINPE 3.1

Transcription:

Systèmes d Exploitation - ENSIN6U3 Systèmes de gestion de fichiers - SGF Leonardo Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr Aix-Marseille Université Faculté des Sciences

Table de matière 1 Notion de fichier 2 Gestion des périphériques 3 Organisation physique des disques Lecture/Écriture d un bloc 4 Structure logique des disques Implantation du SGF sur le disque 5 Organisation logique des fichiers Type d organisation logique Type d accès aux données Type des fichiers Système de fichiers sémantique 6 Organisation physique des fichiers Structure d un descripteur Types d implantation physique Exemples d implantation physique Protection des fichiers et du S.G.F. 7 Utilisation des fichiers Structure de données du S.G.F. Décomposition d une opération Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 2 / 71

Table de matière Notion de fichier 1 Notion de fichier 2 Gestion des périphériques 3 Organisation physique des disques Lecture/Écriture d un bloc 4 Structure logique des disques Implantation du SGF sur le disque 5 Organisation logique des fichiers Type d organisation logique Type d accès aux données Type des fichiers Système de fichiers sémantique 6 Organisation physique des fichiers Structure d un descripteur Types d implantation physique Exemples d implantation physique Protection des fichiers et du S.G.F. 7 Utilisation des fichiers Structure de données du S.G.F. Décomposition d une opération Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 3 / 71

Notion de fichier Notion de fichier Définition - fichier Un fichier est un ensemble d informations regroupées en vue de leur utilisation et de leur conservation. Définition - organisation logique L organisation logique d un fichier décrit son contenu vu par les processus utilisateur. Définition - organisation physique L organisation physique d un fichier décrit son implémentation sur le support physique. Adresse logique Adresse physique Vu des programmes d applications, les informations du fichier sont repérées par des adresses logiques. Vu du système d exploitation, ces informations ont une adresse physique sur le support. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 4 / 71

Notion de fichier Fonctions du S.G.F. Fonctionnalités Les fonctionnalités d accès implémentent le niveau logique et doivent réaliser : le passage du niveau logique au niveau physique ; le partage et la protection des informations. Mémoire virtuelle La gestion de la mémoire secondaire, qui est une ressource partagée entre tous les fichiers. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 5 / 71

Notion de fichier Structure interne du S.G.F. Utilisateur Code de l application librairie standard Interprétation des noms logiques Système d Exploitation Réalisation des fonctions d accès logique Réalisations des opérations d E/S Gestion de la mémoire cache Pilotes de périphériques Gestionnaire d interruptions S.G.F Moniteur d E/S Matériel d E/S Canal d E/S / ADM Contrôleur 1 Contrôleur 2 Périph. 1 Périph. 2 Périph. 3 Périph. 4 Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 6 / 71

Gestion des périphériques Table de matière 1 Notion de fichier 2 Gestion des périphériques 3 Organisation physique des disques Lecture/Écriture d un bloc 4 Structure logique des disques Implantation du SGF sur le disque 5 Organisation logique des fichiers Type d organisation logique Type d accès aux données Type des fichiers Système de fichiers sémantique 6 Organisation physique des fichiers Structure d un descripteur Types d implantation physique Exemples d implantation physique Protection des fichiers et du S.G.F. 7 Utilisation des fichiers Structure de données du S.G.F. Décomposition d une opération Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 7 / 71

Gestion des périphériques Organisation des périphériques Catégories de périphérique Il existe deux catégories de périphérique : les périphériques en mode bloc (disque, clés-usb, CD-ROM, bande) ; les périphériques en mode caractère (carte réseau, imprimante, terminaux, etc.). Composition d un adresse Périph. Canal 0 Contr. CPU Périph. Canal 1 Contr. Périph. # de canal, # de contrôleur, # de périphérique Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 8 / 71

Gestion des périphériques Entrée/Sortie par test d état Attente active La gestion des entrées/sorties par attente active CPU TEST OUT IN Fini Pret Err Périphérique Algorithme attente active sortir(valeur c, périphérique p) début test p, R1 si (R1.prêt = 0) alors erreur fin si out c, p répéter test p, R1 jusqu à (R1.fini ou R1.erreur) fin Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 9 / 71

Gestion des périphériques Entrée/Sortie par interruption (1/2) ADM - Accès Direct à la Mémoire IN Controleur Périphérique CPU Interruption Tampon Mémoire Si le contrôleur ne dispose pas d un tampon, on parle d E/S par vol de cycles de mémoire. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 10 / 71

Gestion des périphériques Entrée/Sortie par interruption (2/2) Canal CO RE Canal Programme Canal Mémoire Algorithme canal Soit c un numéro de canal préparer le programme à l adresse α canal_execute c, α. canal_test c, R1 canal_stop c Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 11 / 71

Organisation physique des disques Table de matière 1 Notion de fichier 2 Gestion des périphériques 3 Organisation physique des disques Lecture/Écriture d un bloc 4 Structure logique des disques Implantation du SGF sur le disque 5 Organisation logique des fichiers Type d organisation logique Type d accès aux données Type des fichiers Système de fichiers sémantique 6 Organisation physique des fichiers Structure d un descripteur Types d implantation physique Exemples d implantation physique Protection des fichiers et du S.G.F. 7 Utilisation des fichiers Structure de données du S.G.F. Décomposition d une opération Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 12 / 71

Organisation physique des disques Organisation d un disque (1/2) Structure d un disque piste secteurs plateaux cylindre Faces, pistes et secteur 3 plateaux donc 6 surfaces et 6 têtes de lecture ; Surfaces découpées en pistes (de 20 à 1500) ; Normalement 512 à 4 Ko par secteur et de 4 à 32 secteurs par piste ;. L adresse d un secteur est un triplet face f, piste p, secteur s Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 13 / 71

Organisation physique des disques Organisation d un disque (2/2) Support et cylindres Un support est composé de plusieurs disques. Un cylindre regroupe les pistes de même numéro de toutes les surfaces. Axe de rotation Support des têtes Bloc Le bloc est l unité élementaire d E/S. Il regroupe les secteurs de même numéro à l intérieur d un cylindre. avec N f le nombre de secteurs par face. le bloc b i d adresse i div N f, i mod N f. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 14 / 71

Organisation physique des disques Lecture/Écriture d un bloc Lecture/Écriture d un bloc Opération d E/S Pour une opération d E/S il faut : positionner les têtes sur le bon cylindre ; attendre que le secteur soit sous la tête ; lire ou écrire le bloc. temps d E/S = temps de latence + E/S Pour diminuer le temps de latence on applique algorithme d ordonnancement des requêtes disques. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 15 / 71

Organisation physique des disques Lecture/Écriture d un bloc Ordonnancement des requêtes disques (1/2) Algorithmes d ordonnancement FCFS (First Come First Served) on respecte l ordre d arrivée ; SSTF (Shortest Seek Time First) le plus proche en premier ; SCAN (balayage ou algorithme de l ascenser) parcours entier du disque dans les deux sens (variente LOOK) ; C-SCAN (Circular SCAN) balayage dans un seul sens (variante C-LOOK). Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 16 / 71

Organisation physique des disques Lecture/Écriture d un bloc Ordonnancement des requêtes disques (2/2) 0 20 40 60 80 100 120 140 160 180 200 FCFS SSTF SCAN LOOK C SCAN C LOOK Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 17 / 71

Organisation physique des disques Gestion du support (1/2) Lecture/Écriture d un bloc Gestion du support La gestion du support c est l allocation et la libération de blocs ou de zones (ensemble de blocs contiguës). Support Un support est caractérisé par : l ensemble des blocs libres ; l ensemble des blocs occupés ; l ensemble des blocs défectueux. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 18 / 71

Organisation physique des disques Gestion du support (2/2) Lecture/Écriture d un bloc Ensembles Ces ensembles sont représentés par : un chaînage des blocs ; un chaînage de blocs d index ; une table de bits B telle que B k = 1 ssi le bloc k fait partie de l ensemble. Taille de la table Pour un disque de 1Go et un bloc 4Ko, la table mesure ( 230 2 12 1 23) = 32Ko Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 19 / 71

Gestion du cache Organisation physique des disques Lecture/Écriture d un bloc Requêtes du S.G.F. Buffer Disque Cache disque En stockant les derniers blocs utilisés, le cache disque permet : de diminuer le nombre d entrée/sortie ; de réaliser des écritures asynchrones. Cohérence La présence d un cache disque pose le problème de la cohérence des informations sur disque. Ce problème est réglé par la mise à jour périodique du disque (par exemple, toutes les 30 secondes pour UNIX ou immédiatement pour MS-DOS). Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 20 / 71

Organisation physique des disques Implantation du cache Lecture/Écriture d un bloc L.R.U. pour le cache disque Pour gérer ce cache disque, le système utilise une version adaptée de l algorithme L.R.U. Exemple L.R.U. disque Entrée Liste de blocs LRU Sortie 6005 5004 2006 1202 0706 Table de hachage des blocs en mémoire Une priorité associée à chaque bloc permet d affiner l algorithme L.R.U. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 21 / 71

Structure logique des disques Table de matière 1 Notion de fichier 2 Gestion des périphériques 3 Organisation physique des disques Lecture/Écriture d un bloc 4 Structure logique des disques Implantation du SGF sur le disque 5 Organisation logique des fichiers Type d organisation logique Type d accès aux données Type des fichiers Système de fichiers sémantique 6 Organisation physique des fichiers Structure d un descripteur Types d implantation physique Exemples d implantation physique Protection des fichiers et du S.G.F. 7 Utilisation des fichiers Structure de données du S.G.F. Décomposition d une opération Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 22 / 71

Structure logique des disques Implantation du SGF sur le disque Implantation du système de fichiers sur un disque (1/2) Description Le secteur 0 du disque contient le MBR (Master Boot Record) qui sert à booter la machine ; À la suite du MBR se trouve la table des partitions : = Adresse de début et de fin de chaque partition. Dans chaque partition se trouve un bloc de boot et un superbloc contenant les informations sur le système de fichiers. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 23 / 71

Structure logique des disques Implantation du SGF sur le disque Implantation du système de fichiers sur un disque (2/2) Représentation Table des partitions Partitions MBR Bloc de boot Superbloc Gestion espace libre I nodes Répertoire racine Répertoires et fichiers Au démarrage de la machine Interrogation du MBR pour obtenir la partition active ; Lecture du premier bloc de cette partition : le bloc de boot ; Le programme dans le bloc de boot charge le système. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 24 / 71

Structure logique des disques Partitionnement d un disque (1/2) Implantation du SGF sur le disque Partition physique Un disque est divisé en partitions (ou partitions physiques). Chaque partition contient un système de fichiers autonome. disque 1 disque 2 disque 3 part. 1 part 2 part. 1 part 1 part 3 part 4 part 2 Répertoire Dans chaque système de fichiers, un répertoire (ou catalogue contient la liste des fichiers se trouvant dans la partition. Avantages des partitions Sécurité accrue ; Diminution de la fragmentation interne ; Possibilité de placer plusieurs S.E. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 25 / 71

Structure logique des disques Partitionnement d un disque (2/2) Implantation du SGF sur le disque Pseudo Partition Un pseudo partition (ou partition logique) regroupe plusieurs partitions physiques. Un système de fichiers peut être implanté sur une pseudo partition. Pseudo Partition 1 Pseudo Partition 2 Part 1 P2 Partition 1 Partition 1 Partition 2 Disque 1 Disque 2 Disque 3 Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 26 / 71

Structure logique des disques Pseudo partition (1/5) Implantation du SGF sur le disque Augmentation On peut faire croître une pseudo partition en ajoutant plusieurs partitions logiques. Pseudo Partition Partition Partition Partition Disque 1 Disque 2 Disque 3 Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 27 / 71

Structure logique des disques Pseudo partition (2/5) Implantation du SGF sur le disque Répartition Les blocs sauvés dans une pseudo partition sont répartis sur tous les disques dans un soucis d efficacité. Pseudo Partition Partition Partition Partition Disque 1 Disque 2 Disque 3 Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 28 / 71

Structure logique des disques Pseudo partition (3/5) Implantation du SGF sur le disque Mirroir Dans un souci de sécurité, les blocs sont dupliqués sur plusieurs disques. Pseudo Partition Partition Partition Partition Disque 1 Disque 2 Disque 3 Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 29 / 71

Structure logique des disques Pseudo partition (4/5) Implantation du SGF sur le disque Combinaison Une pseudo partition peut aussi être un assemblage de pseudo partitions. Pseudo Partition de mirroir Pseudo Partition de répartition Pseudo Partition de répartition Partition Partition Partition Partition Partition Disque 1 Disque 2 Disque 3 Disque 4 Disque 5 Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 30 / 71

Structure logique des disques Pseudo partition (5/5) Implantation du SGF sur le disque Combinaison La configuration des pseudo partitions peut être modifiée dynamiquement. Pseudo Partition répartition Pseudo Partition répartition Pseudo Partition répartition Pseudo Partition répartition Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 31 / 71

Répertoires simples Structure logique des disques Implantation du SGF sur le disque Répertoires uniques Les répertoires uniques constituent le premier moyen pour représenter un ensemble de fichier. Répertoires à deux niveaux Les répertoires à deux niveaux font intervenir l utilisateur comme clé d accès. user1 user2 user3 Master File Definition (MFD) User File Definition, (UFD) Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 32 / 71

Structure logique des disques Répertoires arborescents Implantation du SGF sur le disque Répertoires acycliques Les fichiers ont un chemin d accès et le S.E. définit un répertoire par défaut. F3 racine F1 F2 Répertoires cycliques F3 racine F1 F2 Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 33 / 71

Structure logique des disques Codage des répertoires Implantation du SGF sur le disque Différents codages liste linéaire des couples (nom, référence) ; représentation par hash-coding ; utilisation d une mémoire cache. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 34 / 71

Organisation logique des fichiers Table de matière 1 Notion de fichier 2 Gestion des périphériques 3 Organisation physique des disques Lecture/Écriture d un bloc 4 Structure logique des disques Implantation du SGF sur le disque 5 Organisation logique des fichiers Type d organisation logique Type d accès aux données Type des fichiers Système de fichiers sémantique 6 Organisation physique des fichiers Structure d un descripteur Types d implantation physique Exemples d implantation physique Protection des fichiers et du S.G.F. 7 Utilisation des fichiers Structure de données du S.G.F. Décomposition d une opération Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 35 / 71

Organisation logique des fichiers Type d organisation logique Type d organisation logique Organisation logique connue Le S.E. connaît l organisation logique des fichiers (Macintosh, IBM,...). + les possibilités sont plus importantes, - le S.E. est plus complexe. Organisation logique inconnue Le S.E. considère les fichiers comme des flots d octets (MS-DOS, UNIX,...). + le système est plus simple, - pas d assurance sur la nature des fichiers. Un fichier est constitué d enregistrements. Chaque enregistrement est formé d attributs. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 36 / 71

Exemple MacOS Organisation logique des fichiers Type d organisation logique Exemple fichier MacOS "Data Fork" ID 123 ID 320 ID 1100 ID 50 ID 500 ressource "WIND" ID 354 ID 400 ressource "ICON" ID 0 ID 1 ressource "CODE" "Ressource Fork" Un fichier MacOS Fonctions d accès lire_ressource (type, id, var r : ressource), écrire_ressource (type, id, r : ressource), détruire_ressource (type, id). Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 37 / 71

Accès séquentiel Organisation logique des fichiers Type d accès aux données Ensemble ordonné Le fichier se présente comme un ensemble ordonné d enregistrements. On dispose d un pointeur ptr vers l un des enregistrements. E1 E2 E3..... ptr Fonctions d accès lire(f : fichier, var e : enregistrement), écrire(var F : fichier, e : enregistrement), ajouter(var F : fichier, e : enregistrement), tronquer(var F : fichier), se_déplacer(var F : fichier, depl : entier). Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 38 / 71

Accès direct (1/5) Organisation logique des fichiers Type d accès aux données Par rang Un fichier à accès direct par rang est un tableau d enregistrements repérés par leur rang. On dispose d un pointeur ptr vers l un des enregistrements. L adresse logique est représentée par le rang. Le niveau logique est contiguë. Fonctions d accès lire(f : fichier, var e : enregistrement), écrire(f : fichier, e : enregistrement), insérer(f : fichier, e : enregistrement), tronquer(var F : fichier), se_déplacer(var F : fichier, rang : entier). Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 39 / 71

Accès direct (2/5) Organisation logique des fichiers Type d accès aux données Par clé Un fichier à accès direct par clé est un ensemble de couples (clé, enregistrement). La clé identifie l enregistrement. Une clé unique identifie au plus un enregistrement. Une clé unique peut servir d adresse logique. Fonctions d accès lire(f : fichier, clé : donnée, var e : enreg.), ajouter(var F : fichier, clé : donnée, e : enreg.), supprimer(var F : fichier, clé : donnée), remplacer(var F : fichier, clé : donnée, e : enreg.). Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 40 / 71

Accès direct (3/5) Organisation logique des fichiers Type d accès aux données Adressage dispersé - Hash-coding On se donne f une fonction de dispersion qui est définie de la manière suivante : pour chaque clé c, nous avons f(c) N et 0 f(c) nombre d enregistrements si c 1 = c 2, alors f(c 1 ) = f(c 2 ) Collisions On appel collision, l existence de deux clés c 1 et c 2 telles que c 1 c 2 et f(c 1 ) = f(c 2 ). Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 41 / 71

Accès direct (4/5) Organisation logique des fichiers Type d accès aux données Exemple - Collision fichier = { (c1,article1), (c2,article2), (c3,article3),...} c1 article 2 c2 f article 1 c3 article 3 Inconvénients Il est difficile de choisir f ; Sur certains systèmes, il y a perte de place ; Réorganisation périodique du fichier. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 42 / 71

Accès direct (5/5) Organisation logique des fichiers Type d accès aux données Adressage par indexation Dans l indexation, on accède aux enregistrements par le biais d une table appelée index qui contient l ensemble des clés. index donées article 2 c1 article 1 c2 c3 article 3 Temps accès La recherche d un enregistrement nécessite en moyenne : n/2 lectures si l index n est pas trié ; log 2 n lectures si l index est trié. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 43 / 71

Organisation logique des fichiers Types des fichiers (1/2) Type des fichiers Type d un fichier Le S.E. peut associer un type à chaque fichier. Ce type précise le contenu et la structure logique du fichier. Avantages Définition d opérations partielles ; Optimiser le codage et le traitement ; meilleur sécurité. Inconvénients Quel type pour quel fichier? Manque de portabilité des applications ; Lourdeur du S.E.. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 44 / 71

Organisation logique des fichiers Types des fichiers (2/2) Type des fichiers Types des fichiers Il existe au moins deux types de fichier sur un S.G.F. : Les répertoires : chercher(nom : chaîne, var e : fichier) ajouter((nom : chaîne, e : fichier) supprimer(nom : chaîne) Les fichiers de données Les exécutables : exécuter(e : exécutable) chercher(e : exécutable, fonction : chaîne) Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 45 / 71

Organisation logique des fichiers Système de fichiers sémantique Système de fichiers sémantique Fichier texte structuré bin:x:1:1:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin news:x:9:13:news:/etc/news: operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin Vu comme un répertoire [saphir]$ ls -F bin/ daemon/ games/ news/ operator/ [saphir]$ Peut être exploité [saphir]$ ls -F daemon passwd uid gid gecos home shell Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 46 / 71

Organisation physique des fichiers Table de matière 1 Notion de fichier 2 Gestion des périphériques 3 Organisation physique des disques Lecture/Écriture d un bloc 4 Structure logique des disques Implantation du SGF sur le disque 5 Organisation logique des fichiers Type d organisation logique Type d accès aux données Type des fichiers Système de fichiers sémantique 6 Organisation physique des fichiers Structure d un descripteur Types d implantation physique Exemples d implantation physique Protection des fichiers et du S.G.F. 7 Utilisation des fichiers Structure de données du S.G.F. Décomposition d une opération Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 47 / 71

Organisation physique des fichiers Structure d un descripteur Structure d un descripteur Descripteur d un fichier Informations d état (ouvert/fermé/nombre d utilisateurs) ; Informations sur le contenu (type : fichier texte, exécutable, repertoire,...) ; Informations sur l organisation logique (taille et structure des enregistrements) ; Statistiques d utilisation (date de dernière modification, nombre d utilisations, intervalle de temps entre deux utilisations) ; Informations sur l implantation physique du fichier. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 48 / 71

Organisation physique des fichiers Implantation contiguë Types d implantation physique Description Les fichiers sont stockés dans des blocs consécutifs. descripteur bloc 0 bloc 1 bloc 2 bloc 3 bloc 4 Niveau logique Niveau physique 1210 1211 1212 1213 1214 Avantages et inconvénient + Passage logique physique est simple ; + Accès séquentiel ou direct rapide ; - Perte de place par fragmentation externe ; - Obligation de connaître la taille du fichier : Implantation utilisée dans les DVD et CD-ROM. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 49 / 71

Organisation physique des fichiers Implantation par blocs chaînés Types d implantation physique Description Chaque fichier est considéré comme une liste chaînée de blocs. Les données du fichier sont répartis sur le disque. descripteur bloc logique 0 bloc logique 1 bloc logique 2 Avantages et inconvénient + Accès séquentiels sont efficaces ; + Pas fragmentation du disque ; - Accès directs sont impossibles ; - Utilisation des octets dans chaque bloc pour pointer le prochain bloc. Implantation utilisée dans les disquettes. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 50 / 71

Organisation physique des fichiers Types d implantation physique Implantation par tables d allocation Description Les pointeurs vers les blocs de données sont stockés dans une table. descripteur n n Table d allocation Blocs de données Table d allocation suivante Avantages et inconvénient + Accès séquentiel sont efficaces et les accès directs sont améliorés ; + Bloc physique intégralement disponible pour les données ; - Place occupée par la table peut être considérable ; - Taille des fichiers est limitée. Implantation classique utilisée dans MS-DOS et Windows. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 51 / 71

Organisation physique des fichiers Types d implantation physique Tables d allocation à plusieurs niveaux Description La table d allocation pointe vers d autres tables d allocation qui pointe vers les blocs de données. descripteur Table secondaire Blocs de données Table principale suivante Table principale Table secondaire Blocs de données Avantages et inconvénient + Il y a au maximum 2 ou 3 niveaux ; + Accès directs sont rapides ; + On peut facilement insérer des enregistrements. Implantation utilisée dans UNIX et Linux. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 52 / 71

La norme ISO 9660 Organisation physique des fichiers Exemples d implantation physique Description ISO 9660 est un système de fichiers pour CD-ROM (1988) ; C est un standard : Tous les lecteurs actuels sont compatibles ISO 9660. Sur un CD, les données sont organisées en une spirale continue ; La spirale est divisée en blocs de 2352 octets ; La partie utile par bloc est de 2048 octets : = Les autres octets sont utilisés pour les préambules, à la correction d erreurs et à la gestion en général Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 53 / 71

Organisation physique des fichiers Organisation sur le CD-ROM Exemples d implantation physique Description Les 16 premiers blocs n ont pas d utilisation définie (destinés aux fabricants) ; Le bloc descripteur primaire de volume composé des identificateurs : Du système (32 octets) ; Du volume (32 octets) ; De l éditeur (128 octets) ; Du préparateur de données (128 octets) ; Le nom de 3 fichiers qui contiennent le résumé, la note sur les droits réservés et des informations bibliographiques; Le nombre de blocs du CD, la date de création, la position du répertoire racine Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 54 / 71

Organisation physique des fichiers Les extensions de la norme Exemples d implantation physique Rock Bridge But : reproduire le système Unix ; Attributs rwxrwxrwx ; Les liens symboliques ; Relocalisation des répertoires pour augmenter la profondeur... Joliet But : reproduire le système Windows ; Noms longs jusqu à 64 caractères ; Caractères Unicode sur 2 octets ; Profondeur de répertoire supérieure à 8 ; Nom des répertoires avec extension. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 55 / 71

Organisation physique des fichiers FAT pour MS-DOS : FAT 12 Exemples d implantation physique Description 12 bits pour une adresse disque ; Première version fonctionne avec des blocs de 512 octets ; Taille max. par partition : 2 12 512 octets (en fait seulement 4086 512 car 10 adresses sont réservées) : = Partition maximum de 2Mo La FAT en mémoire est de 4096 entrées de 2 octets ; Pour accroître la taille max., Microsoft a proposé des tailles de blocs de 1Ko, 2Ko et 4Ko : = Partition maximum de 16Mo MS-DOS supportait 4 partitions par disque : gestion de disque jusqu à 64Mo. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 56 / 71

Organisation physique des fichiers FAT pour MS-DOS : FAT 16 Exemples d implantation physique Description 16 bits pour une adresse disque ; Des blocs de 8Ko, 16Ko et 32Ko sont autorisés ; La FAT-16 occupe en permanence 128Ko de mémoire ; Taille maximale par partition : 2Go (64Ko d entrées de 32Ko chacune) et la taille maximale d un disque de 8Go (4 2Go) Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 57 / 71

Organisation physique des fichiers FAT pour MS-DOS : FAT 32 Exemples d implantation physique Description 28 bits pour une adresse disque ; Théoriquement, les partitions peuvent être de 2 28 2 16 octets ; Mais le système interne mémorise les tailles des partitions dans des secteurs de 512 octets : en utilisant un nombre de 32 bits, la taille maximale est donc de 2To ; Avantage par rapport à la FAT-16 : un disque de 8Go en une seule partition ; Pour une partition petite, il est possible de choisir une taille de blocs plus petite (min de 4Ko) : moins d espace est gaspillé par fichier ; La recherche de blocs libres est réalisée en analysant la FAT : les blocs libres ont un code particulier. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 58 / 71

Organisation physique des fichiers Exemples d implantation physique Format d une entrée d un répertoire Description Nom du fichier (8 octets) + extension (3 octets) ; Attributs : (1 octet) : = Lecture seule, archive, caché, système. 10 octets inutilisés Heure (2 octets) et date à partir de 1980 (2 octets) ; Indice du premier bloc du fichier (2 octets) ; Taille du fichier (4 octets). Représentation d une entrée d un répertoire Nom du fichier 0000000000000 1111111111111 0000000000000 1111111111111 0000000000000 1111111111111 0000000000000 1111111111111 Taille Réservé Extension Attributs Heure Date Numéro du premier bloc Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 59 / 71

Organisation physique des fichiers NT FileSystem : NTFS Exemples d implantation physique Description Mis au point pour Windows NT ; Adresses disque sur 64 bits ; Les noms de fichiers sont limités à 255 caractères et le chemin complet est limité à 32767 caractères ; Utilisation possible de caractères Unicode avec le respect de la casse (mais pas par l API Win32) ; Chaque volume : contient des fichiers, répertoires, bitmaps et structures de données est organisé en une séquence de blocs de taille comprise entre 512 octets et 64Ko (généralement 4Ko) Chaque bloc est repéré par son offset par rapport au début du volume. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 60 / 71

Organisation physique des fichiers La MFT : Master File Table Exemples d implantation physique Description Chaque fichier et répertoire possède une entrée de 1 Ko dans la MFT et est vu comme une suite d attributs ; Si l attribut peut être stocké dans la MFT, il est dit résident (date, nom du fichier... ) Les attributs non-résident sont stockés ailleurs sur le disque ; Si le fichier est petit, il est intégralement stocké dans la MFT ; La MFT est un fichier qui peut croître jusqu à 2 48 enregistrements : elle peut être placée n importe où sur le disque. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 61 / 71

Organisation physique des fichiers Fonctionnalités de NTFS Exemples d implantation physique Description Support de la compression de fichiers, de répertoires et de volume ; Lecture/écriture par n importe quelle application sans décompression par un autre programme ; L algorithme de compression supporte des blocs de 4Ko maximum ; EFS (Encrypting File System) : NTFS5 Utilisation de clé de cryptage symétrique en combinaison avec la technologie des clés publiques pour protéger l accès aux fichiers Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 62 / 71

Organisation physique des fichiers Le système de fichiers Ext2 Exemples d implantation physique Description Ext2 pour EXtended File System version 2 ; Premier bloc : le boot ; Ensuite, des groupes de blocs, chaque groupe contenant : Un super bloc : nombre de blocs et i-nodes, taille des blocs,... Descripteur de groupe ; Bitmap des blocs libres puis des i-nodes libres ; i-nodes ; blocs de données Chaque i-nodes fait 128 octets ; 12 blocs et 3 niveaux d indirection ; Les adresses sont sur 4 octets. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 63 / 71

Les indirections Organisation physique des fichiers Exemples d implantation physique Description Dans Ext2, la structure d un i-node est la suivante : Les attributs ; Les 12 premières adresses disque du fichier ; Si c est insuffisant, existence de blocs d indirections. Représentation Attributs Blocs directs Blocs indirects 10 premieres adresses Blocs double indirects Structure d un i node d Ext2 Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 64 / 71

Organisation physique des fichiers Les évolutions de Ext2 Exemples d implantation physique Ext3 Ext4 Proposé pour apporter le principe de la journalisation au système de fichiers Ext2 ; Compatibilité entre les 2 systèmes ; Suffisant pour un poste utilisateur, mais pas pour l utilisation sur des serveurs. Gestion de disques jusqu à 1024 2 50 octets ; Allocation contiguë des fichiers pour minimiser la fragmentation ; Compatibilité limitée entre Ext3 et Ext4. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 65 / 71

Organisation physique des fichiers Protection des fichiers Protection des fichiers et du S.G.F. Vérifications À chaque demande faite au S.G.F., les droits, limites et protections sont vérifiées. Sécurité Pour sécuriser l organisation physique des fichiers, le S.G.F. ajoute des informations redondantes : double chaînage des blocs ; recopie du descripteur en fin de fichiers ; chaque noeud pointe vers son père ; placer une info libre/occupé dans les blocs. Sauvegarde Ces sécurités ne dispensent pas de la sauvegarde périodique des fichiers : sauvegarde totale ; sauvegarde incrémentale ; sauvegarde FIFO sur N jours. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 66 / 71

Les journaux Organisation physique des fichiers Protection des fichiers et du S.G.F. Motivations Lors d un arrêt brutal de la machine, il est possible que la structure de données soit dans un état instable Il est nécessaire d avoir recours à des outils : Exécutés automatiquement au démarrage. Les outils vérifient alors toute la structure : Coût en temps important. Pour éviter ça, une nouvelle structure de données est ajoutée : Structure appelée journal Toutes les actions que le système de fichiers s apprête à faire y sont stockées Lorsqu un problème survient, il suffit de reprendre le journal : Gain de temps important et intégrité des données garantie. Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 67 / 71

Table de matière Utilisation des fichiers 1 Notion de fichier 2 Gestion des périphériques 3 Organisation physique des disques Lecture/Écriture d un bloc 4 Structure logique des disques Implantation du SGF sur le disque 5 Organisation logique des fichiers Type d organisation logique Type d accès aux données Type des fichiers Système de fichiers sémantique 6 Organisation physique des fichiers Structure d un descripteur Types d implantation physique Exemples d implantation physique Protection des fichiers et du S.G.F. 7 Utilisation des fichiers Structure de données du S.G.F. Décomposition d une opération Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 68 / 71

Utilisation des fichiers Structure de données du S.G.F. Structure de données du S.G.F. (1/2) FILE* fa FILE* fb Buffer Buffer Processus A Infos Processus B Infos Buffer système pointeur Table des fichiers du processus A Buffer Système pointeur Table des fichiers du processus B Nb Utilis Taille Implant Table des descripteurs en mémoire Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 69 / 71

Utilisation des fichiers Structure de données du S.G.F. Structure de données du S.G.F. (2/2) tables des descripteurs...... 2 1 2 table des fichiers ouverts 2 2 table des i nodes en memoire table des verrous.......... 1 2 0............. 1......................... compteur de descripteurs mode ouverture offset pointeur sur i nodes ensemble de caches systemes pour les entrees sorties en mode bloc Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 70 / 71

Utilisation des fichiers Décomposition d une opération Décomposition d une opération Utilisateur Système Matériel SVC read( ) Décomposition lirebloc(disk, 100) Cache lirebloc(disk, 150) lancere/s(disk, 150) P( sem[disk] ) Cache ATTENTE D E/S DEROULEMENT DE L ENTREE SORTIE Interruption V( sem[disk] ) lirebloc(disk, 250) RTI Cache Leonardo Brenner, Jean-Luc Massat (AMU) Systèmes d Exploitation 71 / 71