280 likes | 565 Views
Chaptitre 6: MEMOIRES DE MASSE. Aprés les caches et la mémoire centrale câblée, se trouvent les mémoires externes dites aussi mémoires de masse dont une contient la mémoire virtuelle. Les mémoires de masse différent considérablement entre elles. On les répartit en trois classes.
E N D
Chaptitre 6: MEMOIRES DE MASSE Aprés les caches et la mémoire centrale câblée, se trouvent les mémoires externes dites aussi mémoires de masse dont une contient la mémoire virtuelle. Les mémoires de masse différent considérablement entre elles. On les répartit en trois classes. Mémoires de masse primaires. Elles sont attachées à l'ordinateur. L'accés aux données est de type blocs à accés direct (random access). Mémoires de masse secondaires. Elles sont amovibles. L'accés aux données est le m₨me que celui des précédentes. Ce sont les disques durs amovibles magnétiques et optiques et les disquettes. Mémoires de masse de sauvegarde. Elles sont amovibles. L'accés aux données est séquentiel. Les bandes magnétiques sont l'exemple le plus connu. Ce chapitre contient : un panorama des systémes de stockage, la technique des disques magnétiques et la gestion des fichiers, les techniques d'accés, bus de disque.
6.1 PANORAMA DES SYSTÈMES DE STOCKAGE Donnons d'abord quelques éléments de comparaison : Œuvres complétes de Victor Hugo : 60 millions d'octets Annuaire téléphonique de Paris : 55 millions d'octets Le texte complet de l'Encyclop₣dia Universalis tient sur un CD-ROM ordinaire. Magnétiques: - Disquette (1,44 Mo, 300 Francs, insuffisant) - Disque Haute Densité (100-250 Mo, 1000 F, pas de standard) - Disque Fixe (20-80 Go, > 1000F) Optiques (12 cm): - CD-Rom (650 Mo, variable) - CR-R/CD-RW (650 Mo, < 10 F, RW réinscriptibles) - DVD-R, DVD-RAM (x Go, 200 F, pas de standard) Optiques (autres tailles): - 2.5 pouces (230-650 Mo, 2500-3000 F, magnéto-optique) - 12 pouces (> 15 Go, 200 kF, inscriptible une fois)
6.2 LES DISQUES MAGNÉTIQUES En 1956,l'IBM 305 ou RAMAC (Random Access Method of Acounting and Control). C'est le premier disque rigide, sa capacité est de 5 Mo portés par 50 disques de 24 pouces de diamétre. Sa taille est celle de deux réfrigérateurs. L'expression disques dur arrivera plus tard encore pour les distinguer des disquettes souples (floppy disks). Quarante ans plus tard, un disque dur tient dans la poche (diamétre : 2,5 pouces, poids : 99 grammes, capacité de stockage : 8 Go. La densité de surface a été multipliée par 6000 en 24 ans. Elle atteint aujourd'hui 8 Gbits/cm². De m₨me la puissance à diminuer (25 W en 1956 à ~1W aujourd'hui) Principe de fonctionnement et organisation physique Le disque contient : .les plateaux, médium rigide, couramment plusieurs dizaines, solidaires par un axe commun, .le moteur d'entrainement, .le chariot porte-t₨tes et les t₨tes de lecture et d'écriture, .la carte de commande qui régule la rotation, commande le chariot et code/décode les données.
Un plateau, aujourd'hui plus d'une centaine, est un disque, longtemps fait d'un alliage d'aluminium et de magnésium, aujourd'hui en verre. On y applique une couche d'oxyde magnétique. Une trés bonne planéité est indispensable. Les plateaux sont montés sur un m₨me axe. Le moteur entraîne les plateaux par leur axe commun. Sa vitesse de rotation est constante. Elle fut longtemps de 3600 t/mn. On observe 5400, 6400, 7200 et 10000 t/mn et m₨me 15000 t/mn. Les t₨tes de lecture et écriture, plusieurs centaines à raison d'une par face de plateau, sont portées par un bras souple dont la géométrie est étudiée pour réduire les effets de roulis et de tangage de la t₨te.
L'écriture est faite en appliquant à l'enroulement de spires un courant qui crée un champ magnétique. Celui-ci impose une orientation aux domaines du matériau magnétique. La lecture est faite selon deux procédés : inductif ou magnéto-résistif auxquels correspondent deux organes de lecture.
· La lecture inductive est faite par le procédé inverse de l'écriture. La variation du champ magnétique dans l'enroulement crée une tension et donc un courant. Ce courant est détecté. C'est une application directe de la loi de Lenz. · La lecture magnéto-résistive a été lancée par IBM en 1991 sous le nom de MR (magneto-resistive) puis en 1997 GMR (giant magneto-resistive). Elle est faite avec un matériau dont l'impédance change selon la magnétisation qui lui est appliquée. Plus précisément la conductivité électrique dépend des orientations respectives du champ magnétique et du courant qui parcourt le matériau. Amener la t₨te sur la bonne piste ou parcourir les cylindres Les pistes ont un numéro d'ordre induit par le parcours des t₨tes lors du formatage initial. Cet ordre a trois réalisations. L'ordre vertical : les enregistrement sont faits sur les pistes successives d'un m₨me cylindre de t₨te en t₨te, puis sur le cylindre suivant, plus intérieur d'une unité que le précédent.
L'ordre horizontal : toutes les pistes d'une m₨me face d'un plateau sont parcourues avant de passer à la face suivante puis au plateau suivant. Les autres ordres : combinent le vertical et l'horizontal, par exemple : Les courbes de temps d'accés et de débit n'ont pas d'allure générale typique.
CARACTÉRISTIQUES PHYSIQUES PRINCIPALES D'UN DISQUE : Nombre de plateaux, Nombre de t₨tes ou de faces, Nombre de tours par minute, Nombre de pistes par face, Nombre de secteurs par piste, Temps d'accés moyen,Temps d'accés de piste à piste, Nombre de secteurs d'une piste lus en une rotation. Densité linéaire de bits sur une piste. Taille du cache. L'adressage des secteurs était depuis l'origine organisé par cylindre/t₨te/secteur (cylinder/head/sector ou CHS). Un mode nouveau pour les PC est l'adressage logique par bloc (logical block addressing ou LBA). Il utilise une adresse unique pour numéroter les secteurs de fa₤on consécutive. Ce mode a été introduit pour l'accés de type IDE au format ATA-2. Il est commun dans la norme SCSI. Pour convertir un numéro composite CHS vers un numéro LBA, on calcule : LBA= (N°secteur-1)+ (N° t₨te * Nbre secteurs) + (N°cylindre * (Nbredet₨tes+1)* Nbre total de secteurs).
Dans la suite, on fait référence au jeu x86 et aux systémes Unix, Linux et de Microsoft. Présence de zones réservées Un disque préparé pour un systéme x86 contient un premier secteur de 512 octets nommé enregistrement maître. Il est lu et écrit en mémoire par le BIOS résidant en mémoire morte de l'ordinateur, ROM ou EPROM. Il contient : · Un programme, nommé chargeur maître (master boot record) ou amorce maîtresse. Il est lancé par le chargeur (bootstrap, littéralement tire-botte) qui est une partie du BIOS. Il est indépendant de tout systéme d'exploitation. L'exécution de cette amorce charge ensuite le systéme d'exploitation en mémoire. · Des données, 64 octets en une table de 4 lignes de 16 octets chacune. C'est la table des partitions (master partition table). · Une signature en 2 octets, valeur fixe AA55. La table des partitions contient la description du découpage du disque physique en un ou plusieurs disques logiques. Ce découpage donne les possibilités suivantes : · Faire cohabiter plusieurs systémes d'exploitation sur un m₨me disque. · Disposer de disques logiques plus petits que le disque physique pour un systéme d'exploitation qui ne peut pas gérer son volume. Exemple : MSDOS 3.21 gérait 32 Mo au plus; · Pour Unix, gérer séparément les zones du systéme et des zones d'utilisateurs.
Les zones utiles Les zones utiles de la partition ainsi lancée sont définies par le systéme d'exploitation. Elles valent pour la totalité du disque logique, elles ont : · une structure élémentaire appliquée à la machine physique, non parce qu'elle est câblée mais parce qu'elle est indépendante des contenus et qu'elle est matérialisée par des écritures fixes, · une structure englobante, celle de la machine symbolique, elle repére les contenus. · des outils de repérage et de gestion. La structure élémentaire a une unité, le secteur universellement adopté. La taille et le détail des secteurs sont imposés par le systéme d'exploitation. Cette situation est un héritage de l'histoire. Un secteur est une zone de longueur fixe, constituée de deux parties : une zone de repérage et une zone de contenu. Elles correspondent respectivement à l'en-t₨te (header) et au corps d'une trame ou encore à la suscription et au contenu d'un courrier. Dans l'en-t₨te on trouve des données (n° de cylindre, la piste, ...) et des indications de service (occupé, inutilisable, ...). La taille du secteur est un compromis entre : · le bon usage de la surface magnétique, le nombre des accés au disque , · la diminution de la perte due au dernier secteur de chaque fichier, utilisé par moitié en moyenne. Le secteur du disque est l'homologue de la page de mémoire
Un granule est un groupe (cluster) de secteurs constitué de quelques secteurs consécutifs, 2, 4, 8 ou plus, considérés comme une entité non dissociable pour l'allocation d'espace à un fichier. Un fichier est constitué d'un nombre entier de granules. Repérage allégé, il suffit de repérer le granule. Perte d'espace en fin de fichier en est augmentée, on perd en moyenne un demi granule pour les grands fichiers, beaucoup plus pour les trés petits fichiers. La structure de machine symbolique ou structure englobante. Dans tous les systémes on trouve des outils de repérage et de gestion intermédiaires entre les secteurs ou structure granulaire et les fichiers. Ces outils ont partout le m₨me nom systéme de fichiers (file system). Il en est ici comme dans une mémoire segmentée gérée par pagination. Le systéme de fichiers est constitué de deux groupes d'information: Le premier groupe est relatif aux fichiers. Le fichier est une unité de conservation de l'information, il est nécessaire de l'identifier par un nom et de lui attribuer des caractéristiques : localisation et attributs.
On trouvera donc systématiquement, formant un enregistrement : · le nom du fichier et éventuellement d'autres noms, alias ou nom interne, · des autorisations d'utilisation: en lecture, en écriture, les deux à la fois, etc. · la taille en octets, · l'état du fichier: nouveau, déjà existant, temporaire pour la durée d'un processus, etc. · des attributs comme la date de création, de mise à jour, caché, systéme, archive · parfois une longueur de bloc de transfert, · dans certains systémes, le numéro du premier granule du fichier Le second groupe lie les fichiers aux granules ou aux secteurs. · le chaînage des granules entre eux : Chaque granule contient une zone réservée. Dans cette zone se trouve l'adresse du granule suivant. Cette méthode est lourde car il faut lire chaque granule pour connaître l'adresse du suivant. · la table d'implantation du fichier : Chaque fichier se voit attribuer une table de longueur fixe. Elle contient la liste ordonnée des adresses de granules successifs. La longueur de la table limite la taille des fichiers. Cette technique était utilisée dans CP/M. Cette technique est plus rapide que la précédente. So n inconvénient est double : la nécessité d'accéder à une table au moins pour chaque fichier et l'inhomogénéité des tables de fichiers dont le nombre est variable.
· la table des granules, technique de Microsoft pour MSDOS, Windows, OS/2 : Les granules du disque sont repérés dans une table nommée FAT (file allocation table) expression toujours traduite de fa₤on fautive par table d'allocation des fichiers, au lieu de table d'allocation (des granules) AUX fichiers. ENCORE DES BUS, TECHNIQUES D'ACCES AUX DISQUES OU BUS DE DISQUES Interface SCSI - un débit de données maximal, - la souplesse et la facilité de configuration. Il est attaché au bus interne de l'ordinateur. Le systéme d'exploitation n'a à réaliser aucune des fonctions propres au disque. Les instructions Elles sont en deux groupes : · les instructions primaires (SPC : SCSI Primary Commands) qui peuvent ₨tre envoyées à tous les périphériques, · les instructions spécialisées définies pour des catégories de périphériques, les "controller commands" (SCC) pour les adaptateurs, les "blocks commands" (SBC) pour les disques durs, les "stream commands" (SSC) pour les lecteurs de bande, ...
Les protocoles Ils sont spécialisés selon le périphérique. Ils déterminent les modes d'application des instructions SCSI à chaque interface. Ils réglent également l'intercommunication des périphériques. Les deux SCSI classiques (8 bits et plus tard 16 bits) utilisent le protocole "interlocked" (IPC). Les interfaces plus récents utilisent leurs propres protocoles : FibreChannel Protocol (FCP) pour le FibreChannel, Serial Bus Protocol (SBP), Serial Storage Protocol (SSP) pour SSA. Les fabricants d'autres types d'interfaces peuvent utiliser le Generic Packetized Protocol (GPP). Les bus proprement dits Ce sont les différents supports de transmission. Différents type de SCSI SCSI paralléles SCSI-1, SCSI-2, Ultra SCSI, Ultra2 SCSI Les interfaces ou bus série SSA, Fibre Channel, Fibre Channel Arbitrated Loop (FC-AL), Fibre Channel Enhanced Loop (FC-EL)
Interface IDE Dans le domaine des PC, IDE (Integrated Drive Electronics) est le plus répandu, spécialement dans sa version EIDE. IDE a été proposé en 1986 par Western Digital et Compaq. L'interface IDE (également appelées bus AT ou encore ATA pour AT attachment) avait un débit théorique maximal de 4,3 Mo/s et 2 Mo/s en pratique. Il n'était pas utilisable pour d'autres périphériques comme les scanners ou les lecteurs de CD. Il a de nouvelles versions. Fast ATA et Enhanced IDE Ces deux produits se distinguent essentiellement en termes de marketing. Leurs fonctionnalités sont trés voisines. EIDE provient de Western Digital en 1993. Ils sont tous les deux compatibles avec les adaptateurs et les disques de la génération précédente et utilisent le m₨me câble à 40 broches. Cependant, ils n'exploitent leur rapidité qu'en association avec un bus local VESA ou PCI. Ultra ATA Comme pour Ultra-SCSI, le débit sur le bus est doublé, atteignant 33 Mo/s. Depuis 1997, la plupart des lecteurs sont dotés de l'interface Ultra-ATA dit aussi Ultra-DMA ou ATA-33. On a aussi ATA-66 et ATA-100.
Les temps d'accés aux disques La performance d'un systéme informatique doit inclure celle du sous-systéme de stockage. La performance du sous systéme est définie par le temps d'accés et par le taux de transfert de données. Le temps d'accés en lecture est la somme des temps des processus successifs suivants : · La consommation d'unité centrale (UC) est le temps d'exécution de la requ₨te du systéme d'exploitation vers le contrôleur du disque. · Le temps de positionnement (seek time) est celui qu'il faut pour amener une t₨te du disque en position au point voulu de la surface. Il est exprimé en temps de positionnement moyen. · Le temps d'immobilisation (settling time) est celui qu'il faut pour immobiliser la t₨te de lecture qui arrive à sa position avec une certaine vitesse et l'aligner au mieux sur la piste. · La latence ou temps de latence (latency time) est celui qu'il faut pour que le bloc d'information demandé soit présent sous la t₨te. On retient un temps moyen, celui d'une demi rotation du disque. A 7200 t/mn le temps de latence est 4,17 ms. Le taux de transfert est le nombre d'octets transférés par seconde. On donne parfois une fréquence qui est un débit, le nombre de bits par seconde. Comme un cache est presque toujours montée dans les lecteurs, les taux de transfert indiqués correspondent souvent au taux de transfert entre le cache du disque et l'adaptateur.
Les caches de disques Pour améliorer les performances, on fait appel à des caches. Les meilleurs sont multi-segment, ils ressemblent fortement aux caches des processeurs. Le cache supprime les délais mécaniques. Deux fonctionnements typiques pour la lecture : · Le cache lu (read-cache). Si le bloc est trouvé dans le cache, il est transféré, sinon il est lu sur le disque, transféré sur le cache avec son adresse puis transféré. · Le cache à anticipation (read-ahead-cache). Lors de l'accés en lecture à un bloc, le contrôleur charge dans le cache le bloc demandé et plusieurs des blocs suivants. En écriture on utilise deux techniques : · l'écriture directe sur le disque (write-through), sans observation, · l'écriture différée(write-back-cache). Les blocs à écrire sont enregistrés dans le cache. L'écriture sur le disque sera faite ultérieurement. La décision d'écriture est prise soit en cas de manque de place dans le cache soit à la fermeture du fichier.
LES DISQUES OPTIQUES Caractéristiques générales par rapport aux supports magnétiques .Une trés grande densité d'information, couramment de 20 à 50 Mbits/cm², soit un ordre de grandeur au dessus de la densité des supports magnétiques. .Une plus grande pérennité du contenu. On l'estime supérieure à plusieurs dizaines d'années. .Une grande robustesse, par l'insensibilité à l'ambiance radio électrique, comme au fait qu'il n'y a pas de risque d'atterrissage intempestif de t₨te sur le support. .Une meilleure fiabilité, estimée à 10-12 au lieu de 10-9. .En corollaire de la densité, un coût du bit conservé plus faible. .En conséquence, ils ont d'autres marchés comme le stockage de la voix et des images fixes ou animées, dont les volumes unitaires sans compression sont des ordres suivants : LES PERIPHERIQUES PC CARD, anciennement PCMCIA Pour les portables, car pas de place pour mettre des périphériques dans la machine.
DISQUES RAID Pannes et sensibilité (tolérance) Le couplage des ordinateurs à d'autres systémes et le caractére indispensable de leur travail dans de nombreuses activités ont conduit à essayer de les rendre insensibles aux pannes ou tolérants aux pannes selon la traduction mot-à-mot des informaticiens (fault tolerant). Les défauts de fonctionnement proviennent pannes de composants aussi des erreurs des opérateurs, des perturbations radioélectriques, des variations de températures, des chocs subis, les erreurs dans les logiciels, etc. Leurs manifestations relévent : .De la panne. Terme général, elle apparaît quand le service fourni est différent de celui qu'il aurait dû ₨tre. .Du défaut. Il s'agit d'un état incorrect dû à une panne de composant, à une interférence avec une condition d'environnement, une erreur d'action d'un opérateur, ou enfin d'une construction fautive. .De l'erreur. C'est la manifestation du défaut dans l'exécution d'un programme ou dans une donnée. réparation classique; la seule différence est que le systéme n'a pas été arr₨té.
Les caractéres temporels en sont : .La permanence. Le défaut, la faute, la panne sont stables et répétitifs. .L'intermittence. Le défaut ou l'erreur ne sont présents que de fa₤on occasionnelle. .Le transitoire. Le défaut, ou la panne, est présent une fois et n'apparaît plus pendant la période d'observation qui suit. Les attitudes possibles sont : .Le confinement du défaut. On essaye de limiter le champ d'application du défaut en le "confinant" au mieux. .Le masquage du défaut. Il s'agit de techniques telles que le défaut s'il existe n'est pas perceptible. On utilise des composants supplémentaires à l'identique. La décision majoritaire entre trois circuits, par exemple, masque le fait que l'un d'eux est en défaut. .L'itération ou essayer à nouveau. Cette technique est efficace pour les disques. .Le secours. En cas d'erreur détectée et localisée, il y a commutation sur un deuxiéme composant ou équipement qui était en attente.
.La reconfiguration. Un défaut étant détecté et sa localisation faite, le systéme peut par lui-m₨me se "reconfigurer", c'est à dire isoler la partie défaillante et continuer à fonctionner en utilisant soit un organe de secours ad'hoc, soit des parties ou des maniéres d'opérer différentes de telle sorte qu'au prix d'une baisse des performances, le résultat correct soit obtenu. Le systéme est alors dit fonctionner e mode "dégradé". .La reprise. En cas de défaut corrigé ou de systéme reconfiguré, il y a lieu de faire une "reprise aprés panne", c'est à dire de reprendre l'exécution à partir d'un état encore intégre, qui précédait bien sûr l'apparition du défaut. .Le redémarrage à chaud. Il est utilisé sous la forme d'une reprise au point d'erreur si celle-ci n'a pas causé de perturbations. .Le redémarrage à froid. C'est la solution ultime où l'on recommence tout (si c'est possible). .La réparation.
Les RAID (Redundant Array of Independant Disks ) Cette notion est issue des travaux de Randy Katz à Berkeley en Californie, à la fin des années 80. L'équipe universitaire a défini une échelle à cinq barreaux (1 à 5) pour définir des assemblages de disques travaillant à l'unisson de telle sorte qu'ils se comportent comme un seul disque, tout ceci est sous la commande d'un contrôleur ou d'un logiciel complexe. L'objectif principal est plus la sûreté du stockage de l'information que l'économie sur le coût total des disques. Les niveaux 0 et 6 ont été ajoutés ultérieurement. RAID 0 (Strippe) Il a été ajouté aprés coup à la classification initiale par des industriels. Il n'y a pas de redondance, seuls des CRC attachés aux secteurs détectent des erreurs. Si l'on a plusieurs disques à accés simultané, un découpage de l'information (stripping) est fait. Ils sont plus grands si la taille des enregistrements est plus grande. Les tranches de fichier A, B, C... sont lues ou écrites simultanément en paralléle sur les disques. Plusieurs transactions peuvent ₨tre enregistrées simultanément sur plusieurs disques. La capacité des disques est utilisée à 100 %
Raid 1 (mirroring) Il est le premier du document de Berkeley. La m₨me information est lue sur un seul disque et écrite simultanément sur 2 disques. Il y a duplication ou disque miroir (mirroring ou shadowing). La capacité totale des disques est utilisée à 50%.Cette technique est utilisée communément depuis les années 60. Raid 2 Les données sont groupées en blocs comme dans le niveau 0. Les bits ou les octets successifs d'un bloc sont écrits sur des disques différents. Il est écrit sur deux ou plusieurs disques dits de redondance. Il est pratiquement abandonné au profit du niveau 3.
Raid 3 Les bits successifs d'un bloc sont écrits sur des disques différents. Ici, les contrôleurs sont supposés capables de détecter quel disque est en panne. Il n'est plus besoin de code détecteur d'erreur (comme dans Raid 2). Le dernier disque, ici le 5e, contient dans sa position i la parité des positions i des quatre disques de données. Les tailles de a, b... sont ici aussi trés petites, de l'ordre du bit ou de l'octet. En cas de panne d'un disque de données ou de parité, identifiée par un contrôleur, l'information est reconstruite à partir des autres disques. Aprés la réparation ou pendant la réparation s'il y a un disque de réserve, le contenu du disque erroné est reconstruit. Le systéme est indisponible en cas de panne simultanée de 2 disques. Il est trés efficace pour des entrées et sorties séquentielles de grands fichiers. Il est peu efficace pour des entrées et sorties nombreuses et aléatoires car le disque de parité est sollicité pour chaque accés.
Raid 4 Il est analogue au niveau 3 avec une différence. Chaque bloc (le plus souvent un secteur) et non des bits ou octets successifs d'un bloc, est écrit sur un seul disque. Les bits de parité sont calculés sur les bits homologues des blocs successifs. On retrouve l'avantage initial de la lecture d'un bloc en un seul accés sur un seul disque. Comme dans le niveau 3, le disque qui contient les bits de parité est sollicité à chaque accés. Raid 5 Il est analogue au niveau 4 avec une différence. Les bits de parité ne sont pas écrits sur un disque réservé mais entrelacés avec les données selon des algorithmes de placement variés. Selon le placement, on s'approche des performances des disques miroirs. Raid 6 Différe suivant les constructeurs, pour IBM c'est un hybride du Raid 1.