Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr 1- Structure d un disque 2- Ordonnancement des requêtes 3- Gestion du disque - formatage - bloc d amorçage - récupération d un bloc défectueux 4- Fiabilité des disques 5- Gestion de l espace de swap
Ce cours a été conçu à partir de Cours de E. Berthelot http://www.iie.cnam.fr/%7eberthelot/ Cours de A. Sylberschatz www.sciences.univnantes.fr/info/perso/permanents/attiogbe/systeme/courssysteme.html Cours de A. Griffaut http://dept-info.labri.fr/~griffault/enseignement/se/cours Cours de H. Bouzourfi, D. Donsez http://www-adele.imag.fr/~donsez/cours/#se
Supports de stockage Disques durs Disques optiques Bandes magnétiques
Bandes magnétiques Différentes technologies (serpentine, parallèles, hélicoidales) Capacités de stockage jusqu à 100Go (NCPT/Next Compatible Tape Product de Philips) Vitesse de 4 à 10 Mo/s Par rapport aux disques optiques : moins chères mais accès aléatoires plus lents Utilisées pour les sauvegardes (systèmes information, bases de données, serveurs Web, etc)
Disques optiques Plusieurs technologies (write-once / réinscriptible) CR-ROM : 500 à 700 Mo 150 Ko/s DVD : 4 à 18 Go DVD lecture seule DVD-R (inscriptible une fois) DVD-RW (lect/ecr) DVD-RAM (lect/ecr, technologie optique-magnétique)
Disques durs Plus rapide que les supports de stockage précédents Accès aléatoire Capacité : 4 (MicroDrive) à 80 Go (Maxtor) Utilisés pour : le stockage de données persistentes La mise en œuvre d une mémoire virtuelle La mise en œuvre du «swapping de processus»
Quelques Chiffres Taille Coût au Go Vitesse de rotation Vit. de transfert piste interne Vit. de transfert piste externe Taille du cache Temps moyen de dépl. bras Délai rotationnel moyen Nbre de cylindres Nbre de plateaux Nbre de têtes Mean Time between failures EIDE Ultra ATA100 40 Go 1,9 euros 7200 t/min 555Mbits/s 100Mbits/s 2Mo 9,5ms 4,16ms 16383 2 4 600000 h SCSI Ultra 160 80 Go 16,46 euros 15000 t/min 700Mbits/s 200Mbits/s 8Mo 3,6ms 2ms 18479 4 8 1200000h
Structure d un disque dur Conceptuellement : Suite de blocs séquentiels Le bloc est la plus petite unité de transfert Physiquement : Ensemble de plateaux (double faces) Chaque plateau est composé de pistes (circonférences sur le plateau) Chaque piste est composée de secteurs.
Structure d un disque dur (2) Pistes 0..K Cyclindres 0..K 0 1 2 têtes plateaux à double faces bras
Structure d un disque dur (3) Piste découpée en secteurs (ex:512o) Nb de secteurs par piste constant / variable (nouveaux disques) 1 secteurs 0 NbS-1
Adressage de l espace disque Numérotation des secteurs : Piste 0 sur Face 0 : secteurs 0..nbsp-1 Piste 0 sur face 1 : secteurs nbsp..2nbsp 1 Piste 0 sur face 2 : secteurs 2nbsp.. 3nbsp 1 Piste 0 sur face nbf-1 : secteurs (nbf-1)*nbsp.. nbf*nbsp 1 Piste 1 sur face 0 : secteurs nbf*nbsp.. bbf * nbsp + nbsp-1 etc Avec : nbf = nombre de faces du disque nbsf = nombre de secteurs par face nbsp = nombre de secteurs par piste nbsc = nombre de secteurs par cylindre
Adressage de l espace disque Linéarisation de l espace : on donne un numéro de secteur logique N composé comme suit : No cylindre nc No face nf No secteur ns N = ns + nf * nbsf + nc * nbsc
Quantum d allocation Les opérations élémentaires se font sur un nombre entier de secteurs (bloc) : un disque de 20 Mo structuré en secteurs de 512 octets en contient 40 000 un disque de 5Go structuré en secteurs de 4096 octets en contient 1.2 millions grande diversité Définir le quantum d allocation Perte d espace Nombre d unités allouables
Ordonnancement des requêtes disque Objectif: minimiser les temps d accès Temps d accès Temps de positionnement du bras = temps de déplacement de la tête de lecture/écriture sur la bonne piste Temps de positionnement rotationnel = temps d attente pour que le bloc désiré passe sous la tête Temps de transfert Bande passante = nombre total de bits fransférés divisé par le temps total entre l émission de la requête et sa terminaison.
Requête Une requête spécifie : type d opération (entrée / sortie) adresse disque adresse mémoire nb octets
Algorithmes d ordonnancement disque Différents algorithmes (FCFS, SSTF, SCAN,...) Illustration avec une liste de requêtes (0-199) : 98, 183, 37, 122, 14, 124, 65, 67 Hypothèse : initialement, la tête pointe sur 53
FCFS(First Come - First Served) L illustration montre un mouvement total de la tête de 640 pistes.
SSTF (Shortest Seek Time First) Sélectionner la requête la plus proche de la position courante de la tête SSTF est une forme de scheduling pouvant causer la famine de certaines requêtes
SSTF (2) Mouvement de la tête de 236 pistes
SCAN SCAN = balayage La tête démarre à une extrémité et se déplace jusqu à l autre extrémité en servant toutes les requêtes au passage (piste par piste) Parfois appelé algorithme de l ascenceur (ou chasseneige)
SCAN (2) Mouvement de la tête de 208 pistes
C-SCAN Circular-SCAN Fournit un temps d attente encore plus uniforme que SCAN Quand la tête arrive à une extrémité du disque, elle retourne immédiatement au début du disque.
C-SCAN (2)
C-LOOK Version of C-SCAN Recherche une requête avant de traverser le disque
C-LOOK (2)
Sélection d un algorithme SSTF largement utilisé SCAN et C-SCAN plus performants pour les systèmes qui font une utilisation intensive des disques Dans tous les cas : Performance dépend du nombre et type des requêtes Requêtes peuvent dépendre de l implémentation du SGF (fichiers contigus, chainés, indexé)
Gestion du disque Formatage Formatage physique = découpage en secteurs Secteur : en-tête, contenu En-tete possède un code correcteur d erreur (ECC), actualisé à chaque écriture Formatage logique Installation des données du système (ex: FAT, inodes, etc)
Gestion des blocs défectueux Blocs initialement défectueux Blocs devenant défectueux en cours d utilisation Gestion par le contrôleur Formatage Réserve de blocs sains
Gestion des pannes Disque = composant le moins fiable d un système Sauvegardes récupération des données de reprise Disques RAID prévention de la perte de données Parallélisation des accès
Sauvegardes Sauvegarde de reprise / sauvegarde incrémentale Jour 1 : copier tous les fichiers d une partition Jour 2 : copier sur un autre support tous les fichiers modifiés depuis Jour 1 Jour 3 : copier sur un autre support tous les fichiers modifiés depuis Jour 2 Jour N : retourner au jour 1 Incohérence ou perte d objets : remonter dans les sauvegardes incrémentales jusqu à trouver l objet cherché
Sauvegardes (2) Nature de la sauvegarde période conservation incrémentale 8 heures 15 jours reprise 7 jours 3 mois Fiabilité limitée (perte d informations possibles)
Disques RAID (Redondant Arrays of Inexpensive Disks) Redondance des données Parallélisation des E/S 5 niveaux de disques RAID Niveaux 1 et 5 très utilisés
Disque RAID 0 Découpage d une partition en bandes de taille égales Répartition des partition sur différents disques 1 4 7 10 13 2 5 8 11 14 3 6 9 12 15 Disque 1 Disque 2 Disque 3
Disques RAID (niveau 1) RAID-1 Disques miroir utilise un disque miroir pour chaque disque duplique chaque écriture la lecture peut se faire sur n importe quel disque miroir 1 2 3 4 5 1 2 3 4 5 Disque 1 Disque 2
Disques RAID (niveau 5) RAID-5 Parité entrelacée utilise un disque pour stocker des blocs de parité (EOR : ou exclusif) 100 disques > temps moyen de perte de données est de 90 années (2 à 3 ans avec les gros disques chers) 1 3 5 7 9 2 4 6 8 10 EOR(1,2) EOR(3,4) EOR(5,6) EOR(7,8) EOR(9,10) Disque 1 Disque 2 Disque 3
Disques RAID Solutions peu chères performantes fiables
RAID Levels
RAID (0 + 1) and (1 + 0)