Chap. 141 Chapitre 14 (Seul. 14.1, 14.2, 14.4, 14.5) Structure de mémoire disques
Chap. 142 Concepts importants du chapitre 14 n Fonctionnement et structure des unités disque n Calcul du temps dexécution dune séquence dopérations n Différents algorithmes dordonnancement u Fonctionnement, rendement n Gestion de lespace de permutation u Unix
Chap. 143 Disques magnétiques n Plats rigides couverts de matériaux denregistrement magnétique u surface du disque divisée en pistes (tracks) qui sont divisées en secteurs u le contrôleur disque détermine l`interaction logique entre lunité et lordinateur u Beaucoup dinfos utiles dans: _guide Aussi Wikipedia
Chap. 144 Nomenclature - cylindre: lensemble de pistes qui se trouvent dans la même position du bras de lecture/écriture
Chap. 145 Un disque à plusieurs surfaces
Chap. 146 Disques éléctroniques (ne sont pas vraiment des disques) n Aujourdhui nous trouvons de plus en plus des types de mémoires qui sont adressées comme si elle étaient des disques, mais sont complètement électroniques u P. ex. flash memory u Il ny aura pas les temps de positionnement, latence, etc. discutés plus tard u Extrêmement rapides n Malgré limportance grandissante des disques électroniques, les disques magnétiques resteront encore
Chap. 147 Ordonnancement disques n Problème: utilisation optimale du matériel n Réduction du temps total de lecture disque u étant donné une file de requêtes de lecture disque, dans quel ordre les exécuter?
Chap. 148 Paramètres à prendre en considération n Temps de positionnement (seek time): u le temps pris par l`unité disque pour se positionner sur le cylindre désiré n Temps de latence de rotation u le temps pris par l unité de disque qui est sur le bon cylindre pour se positionner sur le secteur désirée n Temps de lecture u temps nécessaire pour lire la piste n Le temps de positionnement est normalement le plus important, donc il est celui que nous chercherons à minimiser
Chap. 149 File dattente disque n Dans un système multiprogrammé il y aura une file dattente pour lunité disque n Dans quel ordre choisir les requêtes d opérations disques de façon à minimiser les temps de recherche totaux? n Nous étudierons différents méthodes par rapport à une file d attente arbitraire: 98, 183, 37, 122, 14, 124, 65, 67 n Chaque chiffre est un numéro séquentiel de cylindre n Il faut aussi prendre en considération le cylindre de départ: 53 n Dans quel ordre exécuter les requêtes de lecture de façon à minimiser les temps totaux de positionnement cylindre n Hypothèse très simpliste: un déplacement d`1 cylindre coûte 1 unité de temps Requêtes daccès
Chap Premier entré, premier sorti: FIFO Mouvement total: 640 cylindres = (98-53) + (183-98)+... En moyenne: 640/8 = 80 axe de rotation
Chap SSTF: Shortest Seek Time First Plus court dabord n À chaque moment, choisir la requête avec le temps de recherche le plus court à partir du cylindre courant n Clairement meilleur que le précédent n Mais pas nécessairement optimal! (v. manuel) n Peut causer famine
Chap SSTF: Plus court servi Mouvement total: 236 cylindres (680 pour le précédent) En moyenne: 236/8 = 29.5 (80 pour le précédent)
Chap Problèmes commun à tous les algorithmes qui sélectionnent toujours le plus voisin: n Balaient efficacement un voisinage, puis quand ils ont fini là dedans doivent faire des déplacement plus importants pour traiter ce qui reste n Famine pour les autres sil y a apport continu déléments dans le voisinage
Chap SCAN: lalgorithme de lascenseur n La tête balaye le disque dans une direction, puis dans la direction opposée, etc., exécutant les requêtes quand il passe sur le cylindre désiré u Pas de famine
Chap SCAN: l ascenseur Mouvement total: 208 cylindres En moyenne: 208/8 = 26 (29.5 pour SSTF) direction
Chap Problèmes du SCAN n Peu de travail à faire après le renversement de direction n Les requêtes seront plus denses à lautre extrémité n Arrive inutilement jusquà 0 n LOOK ne fait pas ça
Chap C-SCAN n Retour rapide au début (cylindre 0) du disque au lieu de renverser la direction n Hypothèse: le mécanisme de retour est beaucoup plus rapide que le temps de visiter les cylindres u Comme si les disques étaient en forme de tores ou beignes F Le dernier secteur serait alors contigu au premier C-LOOK C-LOOK n La même idée, mais au lieu de retourner au cylindre 0, retourner au premier cylindre qui a une requête Tore
Chap. 1418C-LOOK 153 sans considérer le retour (19.1 en moyenne) (26 pour SCAN) MAIS 322 avec retour (40.25 en moyenne) Normalement le retour sera rapide donc le coût réel sera entre les deux retour: 169 (??) direction
Chap C-LOOK avec direction initiale opposée direction Résultats très semblables: 157 sans considérer le retour, 326 avec le retour Retour 169
Chap Comparaison n Si la file souvent ne contient que très peu déléments, lalgorithme du premier servi devrait être préféré (simplicité) n Sinon, SSTF ou LOOK ou C-LOOK? n En pratique, il faut prendre en considération: u Les temps réels de déplacement et retour au début u L`organisation des fichiers et des répertoires F Les répertoires sont sur disque aussi… u La longueur moyenne de la file u Le débit d arrivée des requêtes F Nous ne considérerons pas ces aspects
Chap Gestion de lespace de permutation en mémoire virtuelle (swap space) (14.4) n Nous avons vu comment les systèmes de mém virtuelle utilisent la mém secondaire n Grande variété dimplémentations de systèmes despace de permutation dans différents SE n Lespace permutation (swap) u peut être des fichiers normaux dans lespace disque utilisé par les autres fichiers, u ou peut avoir sa propre partition disque F (solution plus normale) n Peut être mis dans des disques plus efficaces
Chap Gestion despace de permutation (disque) en Unix 4.3BSD n Pour chaque processus, il y a u Un segment texte = le programme F Ne change pas pendant exécution u Et il y a aussi un segment données F Sa taille peut changer pendant exéc
Chap Unix 4.3BSD: Tableau dallocation des segments de texte=programme n Lespace disque est alloué en morceaux fixes de 512K Dernier morceau de programme plus court
Chap Unix 4.3BSD: Tableau dallocation des segments données sur disque n Les données changent de taille plus souvent que le programme n Chaque fois quun proc demande plus de mémoire, on lui donne le double
Chap Autres mécanismes en Unix n Les mécanismes sont différents dans différentes versions de Unix n Les différentes versions fonctionnent avec autres mécanismes, comme pagination, systèmes compagnons (buddy) etc.
Chap RAID 0: Redundant Array of Independent Disks En distribuant les données sur différents disques, il est probable quune grosse lecture puisse être faite en parallèle (au lieu de lire strip0 et strip1 en séquence, cette organisation permet de les lire en même temps) Stallings
Chap Redondance dans RAID 1 Dupliquer les données pour incrémenter le parallélisme et remédier aux pertes de données (coûteux mais utilisé en pratique) Stallings
Chap RAID 2: Correction derreurs par codes de correction Les codes de correction derreur pour des données enregistrées sur un disque sont sauvegardés sur un autre disque (plus de résistance aux erreurs) Stallings
Autres types de RAID n Il y a au moins 6 types principaux de RAID et encore plus u Voir manuel et Wikipédia n Ils sont en général des combinaisons et variations de ces idées n Différents types de RAID sont utilisés par les grands serveurs de bases de données où la vitesse et la fiabilité sont dimportance primordiale n Utiles à connaître car ils sont utilisés en pratique dans les centres dinformatique Chap. 1429
Chap Concepts importants du chapitre 14 n Fonctionnement et structure des unités disque n Calcul du temps dexécution dune séquence dopérations n Différents algorithmes dordonnancement u Fonctionnement, rendement n Gestion de lespace de permutation u Unix n RAID: réorganisation des fichiers pour performance et résistance aux erreurs
Chap Par rapport au livre n Seulement 14.1, 14.2, 14.4, 14.5 (partie expliquée)