Gestion de Fichiers GF-6: Storage Secondaire: CD-ROMs & 2 Questions sur la Gestion des Donnees (Base sur Chapitres 3 de Folk, Zoellick & Riccardi, File Structures, An Object-Oriented Approach with C++)
2 Resume du Cours d’Aujourd’hui CD-ROMs (Disque Compacts, Read-Only Memory) Le Voyage d’un Octet Gestion de la Memoire Tampon Entrée/Sortie en Unix
3 Introduction aux CD-ROMs Un seul disque peut contenir plus de 600 megabytes de donnees (~ 400 livres de la taille du manuel de cours) Un CD-ROM est un disque optique de lecture seule. C’est a dire, c’est un medium de publication plutot qu’un storage de donnees pour entrée et sortie comme les disques magnetiques. Avantages des CD-ROMs: Grande capacite de storage, bon marche, durabilite. Desavantages des CD-ROMs: Un performance de recherche (seek) extremement lente (entre ½ seconde et 1 seconde) Des structures de fichier intelligentes sont indispensables.
4 Organisation Physique des CD- ROMs I Les CD-ROMs sont des descendants des Disques Compacts Audio. Comme ecouter de la musique est une tache sequentielle, elle ne demande pas d’acces au hazard (random acces) aux donnees rapide. Lire les creux et les plateaux (pits and lands): Les CD-ROMs sont reproduits a partir d’un disque maitre en verre dont la couverture peut etre changee par un rayon laser. Lorsque la couverture est developpee, les regions touchees par le rayon laser deviennent des creux (pits) tout au long de la piste suivie par le rayon. Les regions lisses inchangees entre les trous s’appellent des plateaux (lands).
5 Organisation Physique des CD- ROMs II Afin de lire la copie imprimee du disque, un rayon de lumiere laser est projetee sur la piste qui se deplace sous cette lumiere optique. Les creux dispersent la lumiere, mais les plateaux la reflettent presque entierement jusqu’a sa source. Cette alternance de reflection de grande et petite intensite est le signal utilise pour reconstruire l’information digitale originale. Les 1’s sont representes par la transition d’un creux a un plateau et vice-versa. Les 0’s sont representes par le montant de temps qui s’elapse entre les transitions. Plus il y a de temps entre deux transitions le plus de 0s il y a a cet endroit des donnees.
6 Organisation Physique des CD- ROMs III Etant donne ce procede, il n’est jamais possible d’avoir deux 1s adjacents: les 1s sont toujours separes par des 0s. En fait, a cause des limitation physiques du procedes, il doit toujours y avoir au moins deux 0s entre une paire de 1s. Les motifs non traites de 1s et 0s doivent etre traduits afin d’obtenir des motifs de huit 1s et 0s qui forment les octets des donnees originales. EFM encoding (Eight to Fourteen Modulations) transforment les octets de donnees originaux en des motifs etendus de 14 bits qui peuvent etre representes dans les creux et les plateaux du disque optique. Puisque les 0s sont representes par la longueur de temps entre deux transitions, le disque doit revolver a une vitesse precise et constante. Ceci affecte negativement le temps de recherche d’un CD-ROM.
7 CLV versus CAV I Les donnees sur un CD-ROM sont sauvegardees dans une seule piste organisee en spirale. Ceci permet aux donnees d’etre rangee de facon aussi serree que possible puisque tous les secteurs ont la meme taille (qu’ils soient au centre ou sur les bords du disque). Dans l’”arrangement regulier” (sur un disque magnetique), les donnees sont rangees de maniere plus dense au centre que sur les bords De l’espace est perdu sur les bords. Puisque la lecture des donnees necessite un passage de la piste sous le systeme optique a une vitesse constante, le disque doit tourner plus lentement lorsque le bord du disque est lu que lorsque son centre est lu.
8 CLV versus CAV II Le format CLV est responsible en grande partie pour la mauvaise performance de recherche des unites de CD-ROMs: il n’y a pas de moyen direct de saute d’un endroit a un autre. Une partie de ce probleme est la necessite de changer de vitesse de rotation. Afin de lire les informations sur les addresses qui sont sauvegardees sur le disque avec les donnees de l’usager, il faut faire tourner la piste sous l’oeil optique a la bonne vitesse. Ma afin d’ajuster la vitesse, on doit etre capable de lire l’information sur les addresses pour savoir ou ces donnees sont placees. Comment se debarasser de ce cercle vicieux? En devinant et en faisant des essais Ceci ralentit la performance du disque.
9 L’Addressage Different de la methode de disque magnetique. Chaque seconde du temps d’ecoute d’un CD est divise en 75 secteurs. Chaque secteur contient 2 KiloOctets de donnees. Chaque CD-ROM contient au moins une heure d’ecoute. Le disque est capable de contenir 60 min * 60 sec/min * 75 secteurs/sec * 2 KiloOctet/secteur = 540,000 KiloOctets. Il est, en fait, souvent possible de sauvegarder plus de 600,000 KiloOctets. Les secteurs sont addresses par min:sec:secteur. E.g., 16:23:34.
10 Avantages et Desavantages des CD-ROMs Performance de Recherche: tres mauvaise Taux de Transfer des Donnees: Pas trop mauvais/Pas excellent. Capacite Storage: Excellente Benefice: cela nous permet de construire des indexes et d’autres structures de support qui peuvent nous aider a surmonter certaines des limitations associees avec la mauvaise performance des CD-ROMs Acces de Lecture Seulement: Comme la structur du fichier ne peut pas changer, il est facile d’optimiser la gestion des fichiers. Pas besoin d’interaction avec l’usager (qui demanderait une reponse rapide).
11 Le Voyage d’un Octet: Que se passe-t-il lorsque l’instruction de programme write(textfile, ‘P’, 1) est executee? Partie prenant place en memoire: L’instruction appelle le systeme d’exploitation (OS) qui surveille l’operation. Le gestionnaire de fichier (la partie du systeme d’exploitation qui s’occuppe de l’entrée/sortie): Verifie que l’operation est permise Trouve la location physique a laquelle l’octet sera mis en storage (l’unite de disque, le cylindre, la piste, le secteur) Regarde si le secteur contenant le ‘P’ est deja en memoire (sinon, appelle la memoire tampon Entrée/Sortie). Met ‘P’ dans la memoire tampon Entrée/Sortie Garde le secteur en memoire pour voir si d’autres octets vont aller dans le meme secteur.
12 Le Voyage d’un Octet: Que se passe-t- il lorsque l’instruction de programme write(textfile, ‘P’, 1) est executee? Partie prenant place a l’exterieur de la memoire: Processeur d’entrée/sortie: Attend qu’un chemin de donnees externe se libere (l’unite centrale est plus rapide que les chemins de donnees delais) Controlleur de Disque: Le processeur d’entrée/sortie demande au controleur de disques si l’unite de disque est prete a l’ecriture. Le controleur de disque donne des directives a l’unite de disque pour qu’elle deplace sa tete de lecture/ecriture jusqu’a la bonne piste et le bon secteur. Le disque revolve jusqu’au bon endroit et l’octet est ecrit.
13 Gestion de la Memoire Tampon Qu’arrive-t-il aux Donnees voyageant entre la region des donnees d’un programme et le storage secondaire? L’utilisation de memoire tampon: La memoire tampon permet de travailler avec une large quantite de donnees en memoire de maniere a ce que le nombre d’acces au storage secondaire puisse-t-etre reduit.
14 Limitation de la memoire tampon Supposons que le systeme a une seule memoire tampon et alterne entre une operation d’ecriture et une operation de lecture. Dans ce cas, le secteur contenant le caractere a lire est constamment efface par le secteur contennant l’emplacement dans lequel le caractere sera ecrit et vice-versa. Dans un cas pareil, le systeme a besoin de plus d’une memoire tampon: au moins une pour l’entrée et l’autre pour la sortie. Deplacer les donnees jusqu’au disque ou du disque a la memoire prend beaucoup de temps et les programmes peuvent devenir limites par l’entrée/sortie (IO Bound) Il faut trouver de meilleures strategies afin d’eviter ce probleme.
15 Strategies pour les memoires tampon Memoires Tampon Multiples Memoires tampon double Pooling de memoires tampon Mode de deplacement (move mode) et mode de reperage (locate mode) Disperse/Regroupe Entrée/Sortie (Scatter/Gather I/O)