Architecture des ordinateurs (par V. Vigneron)

publicité
ARCHITECTURE DES MACHINES
V. Vigneron
[email protected]
Univ. Evry Val d’Essonne
Jan. 25, 2013
Approche des blocs fonctionnels (Rappel)
UNITE CENTRALE
Unité de commande
Unites de calcul
Unites d’echanges
MEMOIRE CENTRALE
Instructions
Données
Peripheriques
Figure 1 – Structure schématique d’un système informatique.
– L’Unité
P Centrale (UC) → Modèle de Von Neuman
– 6=
d’entités physiques, mais
– unité de traitement (microprocesseur)
– + la mémoire centrale
– L’Unité de Calcul (UAL) ou Unité Arithmétique et Logique = opérations arithmétiques+logiques
– L’Unité de Commande : gère le bon déroulement des programmes en cours.
– reçoit l’instruction à réaliser
– réparti les ordres aux divers organes
– va chercher l’instruction suivante grâce à un registre (compteur ordinal 1 ).
– La Mémoire Centrale (MC) : ensemble de cellules (de mêmes tailles, le mot
mémoire 2 ) où on range l’information
– L’Unité d’échange : gère les tranferts des informations entre l’unité centrale et
l’environnement du système informatique (disques durs, imprimantes, écran,. . . ).
– Les périphériques : très nombreux et variés.
– ceux qui émettent des info
– ceux qui en reçoivent
UAL+UC = Unité Centrale = unité de traitement = CPU (Central Processor Unit)
Unité Centrale de traitement
Un programme = suite d’instructions qui traitent des données
une instruction = opération élémentaire d’un langage de programmation = plus petit
ordre que peut comprendre un ordinateur.
1. Comment est constituée une instruction ?
2. Comment est-elle prise en charge ?
3. Comment est-elle exécutée ?
4. Comment évoluent les données ainsi traitées ?
Exemple : addition de la donnée A avec la donnée B
basic
Let C = A + B
cobol
compute C = A + B
Assembleur Z80 ADD A,B
se traduit par la suite binaire 10000001. L̀arge
On trouve toujours 2 parties
– ce qu’il faut faire comme action,
– avec quelles données la réaliser.
Les instructions sont représentées sous forme d’éléments binaires 0 ou 1.
Langage evolue (basic,cobol,pascal)
Compilateur
Langage non−evolue
Assembleur
(depend du
processeur : 68000,
80386,80486,...)
Instruction en binaire
0100011010101110
Microcommandes
Figure 2 – Transformation langage évolué → série binaire.
L’instruction se traduit dans l’UC par une suite ordonnée de commandes appelées
microcommandes 3 .
ZONE OPERATION
Ce qu’il faut faire
ZONE DONNEES
Avec quoi le faire
– la zone opération : permet de savoir
– quelle opération elle doit réaliser
– quels éléments mettre en œuvre
ZONE OPERATION
Code operation
Code complementaire
Ce qu’il faut faire
ZONE DONNEES
Avec quoi le faire
– la zone adresse : contient l’adresse d’une zone de données. Exemple : l’adresse
FB80. Une des 2 adresses est une adresse implicite, souvent l’accumulateur.
L’unité de commande
rôle ?
– décode l’instruction en cours,
– lance les microcommandes aux composants, cherche la nouvelle instruction et recommence.
Composants de l’unité centrale :
– Le registre d’instruction : charge l’instruction à traiter
Microcommandes
Registre
d’etat
+1
Séquenceur
Compteur ordinal
Decodeur
Code operation
Zone adresse
Registre d’instruction
Figure 3 – Schéma simplifié de l’unité de commandes.
– le séquenceur : les microcommandes respectent une chronologie précise selon
le type d’instruction à exécuter. Cette "chronologie" est rythmée par un quartz
oscillant à une fréquence entre 20 et 1000 MHz. C’est le composant qui émet ces
microcommandes selon le code instruction de l’instruction
– le registre d’état : mémorise l’état des composants et l’historique des opérations
déjà exécutées, grâce à des indicateurs (flags ou drapeaux 4 ).
– le compteur ordinal : registre spécialisé chargé automatiquement par le système
lors du lancement d’un programme avec l’adresse mémoire de la première instruction du programme à exécuter. A chaque fois qu’une instruction a été chargée
et s’apprête à être exécutée, ce compteur est incrémenté pour pointer sur l’adresse
de la prochaine instruction à exécuter.
L’Unité Arithmétique et Logique
composé de circuits logiques (additionneurs, soustracteurs, multiplicateurs, comparateurs logiques,. . . ) selon le degré de technicité du fabricant.
UAL+UC = Unité Centrale = unité de traitement = CPU
En résumé, cette UC permet :
– d’acquérir et décoder les inst. d’un programme
– de faire exécuter par l’UAL les opérations arithmétiques et logiques
– de gérer les adresses des instructions grâce au compteur ordinal
– de mémoriser l’état interne de la machine
– de fournir les signaux de commande et de contrôle aux divers composants
Fonctionnement (simplifié) de l’UC :
Unité Centrale
MEMOIRE CENTRALE
Compteur ordinal
ICO
F
Accumulateur
Bus de
Commandes
LCO
CCO
instruction
Bus d’adresse
Horloge
S
Sequenceur
CAD
CRA
ADD
SUB
ET
Registre
d’etat
UAL
1
decodeur
code
zone
operation adresse
Registre
Instruction
2
CRI
PSR
operande
Registre
adresse
memoire
ECR
LEC
Registre Mot
CEB
EDA
FFFD
FFFE
adresses hautes
ENM
CEA
SRM
Bus de donnees
Exemple : La µ-commande (nommée arbitrairement) LCO pointe sur la liaison qui
va du compteur ordinal au bus d’adresses ⇒ autorise tranfert du contenu du compteur
ordinal sur le bus d’adresses.
1. Recherche de l’instruction (fetch step)
– Le programme à exécuter (Bound Unit) est chargé en mémoire centrale
– il occupe des cellules mémoires repérées par leur adresse
– Le compteur ordinal est lancé par le système d’exploitation avec l’adresse de la
première instruction
– le séquenceur recopie le contenu ordinal sur le bus d’adresses (LCO)
– l’adresse de la 1ère instruction est transmise (PSR) au registre d’adresse mémoire
– LEC autorise la recopie de l’information dans le registre mot (tampon ou buffer)
– le contenu du buffer est transféré (LMM) sur le bus de données
– la µcommande CRI recopie le ontenu du bus dans le registre instruction, prête à
être décodée et exploitée par le séquenceur
– ICO incrémente le compteur ordinal qui pointe sur l’adresse de l’instruction suivante
2. Traitement de l’instruction
– le décodeur associé au séquenceur analyse la zone opération
– il génère une série de microcommandes selon le code opération
Exemple : on veut
(a) Charger la première donnée 8h à l’adresse F800H dans le registre A
(b) Additionner contenu de A avec 4h situé en F810H → résultat remis en A
(c) ranger le résultat=Ch en F820H
soit le programme en assembleur
LD A, (F800H)
#Charger A avec le contenu de l’adresse
ADD A, (F810H)
#Ajouter le contenu de l’adresse F810H à celui de A
LD
(F820H),A #Ranger à l’adresse F820H ce qui est en A
se présente sous la forme d’un code machine
3A F8 00
C6 F8 10
32 F8 20
Les adresses de stockages sont arbitraires.
08
F800h
04
F810h
3A F8 00
C6 F8 10
32 F8 20
FB00h
FB01h
FB02h
Figure 4 – Etat de la mémoire avant exécution du programme.
Les données
– se présentent aux entrées de l’UAL
– sont traitées
– le résultat est fourni en sortie
Les Bus
1. Le bus de données (Data Bus ) : transfert les données entre les composants
du système.
– Mots de 8,16,32 ou 64 bits selon le nombre de fils sur le bus.
– Les info peuvent circuler en parallèle et dans les deux sens (bidirectionnel).
2. Le bus d’adresse (Adress Bus ) : véhicule des adresses (de l’instruction à
charger, de la donnée,. . . )
Détermine la taille de la mémoire directement adressable (adressage physique).
Exemple : bus de largeur 16 bits ⇒ 216 combinaisons ≡ 2Go de mémoire physique
3. Le bus de commandes (Control Bus ) : circulation du séquenceur vers les
divers composants
Les modes d’adressage
Instructions et données utilisent des zones de mémoire (segments)
En fait, une instruction ne tient pas en général sur un seul mot mémoire 5 , mais sur
un segment mémoire.
Diverses techniques d’adressage permettent de retrouver l’adresse physique de l’information :
– adressage immédiat : la partie adresse de l’instruction contient l’opérande luimême :
ADD A,1Bh
– adressage absolu : le code opération est suivi de l’adresse réelle physique de
l’opérande :
LD (F805h), A
⇒ range à l’adresse F8O5 le contenu du registre accumulateur
– adressage implicite : la zone opérande désigne un registre 6
LD A,C
transfert ici le contenu de C dans A.
– adressage relatif : situe l’information par rapport à une adresse de référence en
indiquant un déplacement (offset) en avant ou en arrière par rapport au contenu
du compteur ordinal. Si déplacement codée sur 8 bits ⇒ déplacement petit < 255
adresses mémoires en ±
JR NC,025h
NC : No Carry= pas de retenue. 2 avantages
– amélioration des performances du programme
– possibilité d’implanter le programme n’importe où en mémoire car pas d’adresses
absolues
– adressage indexé : déplacement par rapport au contenu du registre spécialisé
(registre d’indax)
ADD A,(IX+4h)
→ Ajoute au contenu de l’accu. la donnée fournie par le registre IX augmentée
d’un déplecment de 4 octets
– adressage indirect : permet d’accèder à un mot mémoire dans lequel on trouvera
l’adresse effective de l’information
ADD A,(HL)
– adressage symbolique : permet d’affecter à chaque zone un nom symboliqye de
son choix (étiquette)
JP NC,ETIQ1
où ETIQ1 est un nom symbolique se situant à un endroit précis du programme.
Interruptions. Généralités
Permet d’arrêter un programme en cours d’exécution sur le processeur pour que
celui-ci traite une tâche "plus urgente".
⇒ à la finde cette tâche : reprise du processus interrompu.
Quels événements ? coupures d’alimentation, alarmes, périphériques prêts à émettre
ou à recevoir des données. . .
Types d’interruptions
– externe et matérielle par un périphérique
– externe et logicielle par un programme
– interne par le processeur lui-même lors d’éénements exceptionnels (traps ou exceptions) : 0· , dépassement de capacité, accès anormale de la zone mémoire,. . .
⇓
∃ Hiérachisation des interruptions
Exception
vecteur 8088/8086 i286/386
Erreur de division
00h
oui
oui
Code opération invalide
06h
oui
oui
Périphérique non-disponible
07h
non
oui
Segment non-présent
0Bh
non
oui
Segment de pile dépassé
0Ch
non
oui
Erreur de page
0Eh
non
non/oui
Erreur coprocesseur
10h
non
oui
Remarques :
– dans µp : ∃ instructions interdisant les interruptions dans certains cas ⇒ interruptions masquables
– mais certaines interruptions ne peuvent être interdites. Exemple : IRQ pour coupure de courant ⇒ interruptions non-masquables
Reconnaissance/traitement des interruptions
Moyuens physiques pour reconnaître la source d’une interruption
– IRQ multiniveaux chaque équipement est relié à une entrée d’interruption particulière (simple) ⇒ coûteux en broches d’entrées du proceseur
PROCESSEUR
Interruption 1
Interruption 2
IRQ 7
– IRQ ligne unique une seule entrée réservée au niveau de l’UC. Quand l’UC reçoit
la demande d’IRQ, elle scrute tous les équipements émetteur potentiel (scrutation)
– IRQ vectorisé = signal de demande + identificateur.
Ce numéro (vecteur) déposé dans le bus de données identifie le périphérique à
l’origine de la demande : fourni par un contrôleur dd’interruptions ou par le périphérique lui-même.
Interruption 1
Interruption 2
PROCESSEUR
Controleur
d’interruptions
IRQ 7
Les µp de la gamme Intel peuvent recevoir jusqu’à 256 interruptions référencées IRQn.
IRQ0
IRQ1
IRQ2
IRQ3
IRQ4
IRQ5
IRQ6
IRQ7
IRQ8
IRQ9
IRQ10
IRQ11
IRQ12
IRQ13
Assignation fixe
Horloge timer
clavier
Assignation habituellement constatée
carte écran EGA,VGA,contrôleur d’interruption, scanner, carte son,. . .
port série COM2,COM4,modem-fax,CD-ROM
port série COM1,COM3,souris-bus,CD-ROM
port // LPT2, souris-bus,carte réesau, CD-ROM,carte son, scanner
Contrôleur disquette
port // LPT1
Horloge temps réel
Carte réseau, carte son,. . .
IRQ2 redirigée, CD-ROM,carte son/graphique
carte résau, CD-ROM,scanner,carte son, contrôleur SCSI
carte résau, CD-ROM,scanner,carte son, contrôleur SCSI
carte résau, CD-ROM,port souris
coprocesseur
Traitements des IRQ
– première phase : le périphérique transmet une demande d’interruption au contrôleur d’interruption qui la répercute au microprocesseur (demande IRQ2)
Interruption 1
Interruption 2
PROCESSEUR
Controleur
d’interruptions
IRQ 7
– deuxième phase : le µp autorise/rejette l’interruption et le contrôleur d’interruption dépose surle
bus de données le vecteur relatif à la demande IRQ2
⇓
– fin de traitement de l’instruction en cours
– sauvegarde état du système (contenu des registres, compteur ordinal,. . . )
– forçage du contenu du compteur ordinal ⇒ prend comme nouvelle adresse celle de l’inst. du
sous-programme associé à l’IRQ
Dépot du vecteur
sur le bus de donnees
PROCESSEURautorisation Controleur
d’interrup. d’interruptions
Peripherique
– troisième phase : le processeur va chercher en mémoire l’adresse de SP2
– quatrième phase : le processeur se branche sur SP2
REGISTRES
REGISTRES
SP2
SP1
SP1
SP0
SP0
adresse de SP3
adresse de SP2
adresse de SP1
adresse de SP0
Troisieme phase
Table de vectorisation
SP2
Quatrieme phase
Applications aux microprocesseurs Inteli86
Une carte est repérée par une adresse physique (par exemple 0220h). Le connecteur,
placé sur un bus (ISA-AT-ou PCI généralement) n’a pas d’adresse physique propre.
une carte
un connecteur
– l’attribution d’une adresse est faîte à l’installation. Pour les cartes réseaux entre
300h et 340h.
– la carte est "pilotée" par un programme spécialement écrit pour cette carte (driver), suffice en .drv ou .vxd,. . .
– les canaux DMA sont au nombre de 8 et sont gérés par le chipset
canal
canal
canal
canal
canal
canal
canal
canal
0
1
2
3
4
5
6
7
Etat
libre
libre
réservé
libre
libre
libre
libre
libre
Usage habituel
carte réseau/graphique, scanner
carte son, 8bits
lecteur disquettes
Port imprimante
contrôleur mémoire, scanner
CD-ROM, scanner, cartes son-16bits
CD-ROM, carte son
CD-ROM, carte son
Fonctions d’un Système d’Exploitation (SE)
– Un Système d’exploitation est un intermédiaire entre l’ordinateur et
un programme
– un SE définit une machine virtuelle plus facile à utiliser que la machine réelle
– Gestion des ressources physiques
– gestion du processeur et de la mémoire
– gestion des périphériques
– gestion des entrées/sorties interruptions “accès” à l’information
– allocation des périphériques problème de l’interblocage
– Gestion de l’information
– conservation, partage et protection de l’information
– gestion de l’information en mémoire secondaire
– fichier : unité de partage et de protection
– gestion de l’information en mémoire principale
– partage et protection du SE
– Avant 1956, la notion de SE n’existait pas
– chaque utilisateur réservait la machine et avait tout le matériel à disposition
pour l’exécution de son programme
– les programmes étaient écrits directement en langage machine
– L’utilisateur pouvait interagir avec son programme
– mise au point relativement aisée
– le taux d’occupation du processeur était bas
– le processeur était oisif entre deux exécutions du programme
– le processeur était oisif entre le départ d’un utilisateur et l’arrivée du suivant
Place du système d’exploitation dans un ordinateur
Logiciel
Utilisateur
Commandes,menus
Application
langages evolues
Assembleur, langages specifiques
Systeme d’Exploitation
Jeu d’instructions de
base
Architecture externe
Architecture interne
Materiel
Langage machine
Microcode
Micro−instructions
Signaux
electroniques
Machine Physique
Figure 5 – Vue globale d’un système informatique.
Objectifs du SE :
– faciliter l’utilisation de la machine en rendant les couches logicielles supérieures
aussi indépendantes que possible du matériel : le système rend la machine opérationnelle et augmente son efficacité.
– gérer les différentes ressources internes et externes de la machine de façon optimale
⇓
mise à disposition des ressources aux utilisateurs qui les requièrent
Le système est donc un gestionnaire de ressources .
Figure 6 – Architecture schématique d’un ordinateur.
Systèmes de gestion de fichiers (SGF)
Un SGF
– organise et optimise l’implantation des données sur les disques
– permet de retrouver et corriger une zone endommagée
– repère certains virus
– optimise les performances de l’OS (défragmentation, compression fichiers)
Rappel : rapport de
mémoire (ns = 10−9 s).
–
–
–
–
–
–
1
1000000
entre temps d’accès disque (1ms) et temps d’accès en
FAT (File Allocation Table) : monde de la micro, PC,. . .
HPFS (High Performance File System) : surtout avec OS/2
NTFS (Windows NT File System) : uniquement pour
Unix
CDFS
EXT2FS (Linux File System)
Système de fichiers
Nom de fichiers
(en caractères)
Répertoires (dossiers)
Lecteur logique réparti sur plusieurs disques physique
Mirroring
Journalisation des activités
Type adressage des fichiers sur
les volumes
Taille max. d’une partition
Attribution aux utilisateurs de
droits d’accès
FAT
8+3 caractères
détourné/W in95
non triés
non
HPFS
254
NTFS
256
Unix
illimité
BTree
non
BTree
oui
non triés
non
non
non
16 bits (32, Win95)
oui
oui
oui
oui
64 bits
oui
32 bits
2048 Go
oui
illimité
oui
4 Go
non
oui
Table 1 – Comparaisons des différents SGF.
Rappels sur le formattage
Formater = préparer un disque pour accueillir les informations
– Formatage de bas niveau (en usine) subdivise le disqu en pistes (cylindres) et
en secteurs (512 Ko).
– se base sur les caractéristiques du disque
– écrit sur les entêtes de secteurs
1. les adresses appropriées
2. des informations de correction d’erreur
– Formatage logique : écrit des informations complémentaires par le biais de la
commande format sous DOS.
– "numérote" chaque secteur 7
– écriture du secteur d’amorçage des partitions
– enregistrement de l’octet d’identification de système (Id System) → table des
partitions du disque
– informations du SGF sur l’espace disponible, emplacement des fichiers/répertoires,. . .
– repérage des zones endommagées
Notions de partitions
Zone du disque dur
– "découpée" pour le rangement des informations (par fdisk sous DOS)
– et géré par un SGF (év. différent).
Une table des partitions repére ces partitions.
C
C
D
E
Une seule partition
lecteur logique C:
Deux partitions
Partition 1 : lecteur logique C
Partition 2 : lecteurs logiques D et E
Disque 0
400 Mo
C:
FAT
400 Mo
Disque 1
800 Mo
D:
NTFS
500 Mo
F:
FAT
50 Mo
G:
FAT
30 Mo
H:
Unix
220 Mo
Table 2 – Exemples de partitionnement
– Partition principale (PP) : reconnue par le BIOS (Basic Input Output System)
– contient un secteur d’amorçage contenant l’enregistrement MBR (Master Boot Record) ⇒
partition amorçable
– MBR (cylindre 0, tête 0, secteur 0) contient table des partitions
– contient le gestionnaire de démarrage (Boot Manager) → choix év. entre différents systèmes
d’exploitation
– Une seule peut-être active.
– Partition étendue : espace disque non-définie dans les PP
– non-formatée
– divisible en lecteurs logiques à son tour
– lecteurs logiques (≤ 22) repérées par une lettre qui eux sont formatés (EXT-DOS sous DOS)
Partition principale (Boot manager) Pas de lettre de lecteur
Partition principale FAT (DOS)
C:
:
Partition principale NTFS (Windows NT)
D:
lecteur logique FAT
E:
Partition etendue
F:
lecteur logique NTFS
– Lecteurs logiques : divisent les partitions étendues en sous-groupes ⇒ subdivise un grand disque
dur pour maintenir une structure de répertoires assez simple.
Disque dur 2
lecteur logique
Disque dur 1
Disque dur 3
Figure 7 – L’agrégat de partitions
Le système FAT (File Alloction Table) est utilisé sur les machines type compatibles PC (MSDOS,
Windows 3.x, Windows 9x 8 , Windows NT,. . . ).
– conçue pour gérer des disquettes de faible capacité ⇒ limites
– divise le dd en clusters,
– de nombre limité
– et tous de même capacité (exemple 1024o)
– contient la liste de tous ces blocs contenant des parties de fichiers
– contient (par ordre) :
– le MBR avec la table des partitions
– une zone réservée au secteur d’amorçage (Boot Loader)
– un exemplaire de la FAT
– une copie optionnelle de la FAT
– le répertoire principal (Root Directory)
– la zone des données et sous-répertoires
Sur les disquettes, formatage logique et bas niveau sont confondus.
Sous DOS, il n’y avait qu’une seule partition primaire.
La fat(fat 12,fat 16,V-fat, fat 32)
fat= structure de tables dont les éléments sont des informations (chaînées) sur les
unités d’allocation mémoire (appelées clusters).
→ adresses de blocs codées sur 12, 16,32 bits
212
216
232
264
=
=
=
=
4 096 clusters/volume
65 536 clusters
4 294 967 296 clusters
16 milliards de milliards de clusters
DOS
DOS
Windows 9x
NTFS
o×1024
– si volume= 64M o ⇒ chaque cluster= 64M65536
= 1Ko
– si volume= 640M o ⇒ chaque cluster= 10Ko
Fichier1.txt
0002
Fichier2.txt
0005
Fichier3.txt
0007
Exemple de FAT
Repertoire
Entrees
de FAT
0
1
2
3
4
5
6
7
8
9
0003 0004 FFFF 0006 0008 FFFF FFFF . . .
Quelle information ?
– disponibilité ou non du cluster,
– occupation du cluster par un fichier,
– défauts,. . .
Inconvénients :
– perte de place
– fragmentation
– avec une fat 12 (1 octet 1/2) on peut repérer 212 clusters soit 4096 clusters par
volume, cette technique n’est donc utilisée que pour de petits volumes (disquettes)
ou on n’a besoin que d’un petit nombre de clusters.
– perte de place : cas d’un fichier de 1 caractère (=1 octet) occupant 1 cluster ⇒,
on va perdre 4096 − 1 = 4095o. avec 2000 fichiers, on pourrait perdre jusqu’à 40
Mo.
Encore pire si on utilise des clusters de 32 Ko. Le moindre autoexec.bat monopolise 32 Ko ! ⇒ éviter les petits fichiers ! !
– A la conception de Windows NT, deux techniques existaient déjà : fat qui montraient ses limites et hpfs pour OS/2 qui permettait de gèrer de gros disques sur
32 bits.
NTFS (NT File System)
Conçu pour Windows NT
– peut fonctioner avec des volumes de type fat (par fat 32)
– organisé en couches, indépendantes les unes des autres (Figure)
– les pilotes transmettent les requêtes Entrées/Sorties
Gestionnaire des entrees/sorties
Service du
fichier journal
Enregistre
l’ecriture
Pilote NTFS
Vide le fichier
journal
Ecrit dans
le cache
Gestionnaire
de cache
Lit/ecrit
dans le cache
Pilote Tolerance
de panne
Ecriture/Lecture d’un Volume
en miroring
Ecriture/Lecture sur le disque
Pilote Disque
Accede au fichier
ou vide le cache
Gestionnaire de
memoire virtuelle
– ntfs collabore avec un gestionnaire de cache
– capable de restaurer des fichiers endommagés ou reconstruire volume disque grâce
au fichier journal (Log File Service)
– ntfs duplique les secteurs vitaux
– mode de fonctionnement transactionnel pour sécuriser les volumes
– les clusters ntfs numéros LCN (Logical Cluster Number) mémorisés dans une
table codée sur 64 bits
Taille cluster Taille disque
512o
disques ≤ 512M o
1Ko
512M o <disques ≤ 1Go
2Ko
1Go <disques ≤ 2Go
4Ko
disques ≥ 512M o
– ntfs gère le fichiers dans une BdD relationnelle MFT (Master File Table) / le
disque
informations
standards
Nom de fichier
Descripteur de
securite
DONNEES
DONNEES
Attributs
etendus
DONNEES
Exercices
1. Calculer la place gagnée selon que l’ordre de réservation d’espace fichier sur une
machine théorique serait :
(a) CREATE FIC1-LRSZ 90-CISZ 256
(b) CREATE FIC2-LRSZ 90-CISZ 512
FIC1 et FIC2 sont les noms de fichiers créés, LRSZ désigne la longueur de l’article
du fichier, CISZ (CI SiZe) détermine la taille du CI en octets.
On considère pour l’exercice que les articles logiques ne peuvent être fractionnés
ce qui n’est pas touours le cas sur des machines réelles ou un même article peut
parfois être fractionné entre plusieurs CI, assurant ainsi un remplissage optimum
des dîts CI.
2. Le responsable réseau de l’entreprise décide d’acheter un serveur d’application sur
lequel seront centralisés les applications bureautique les plus courantes (traitement
de texte, tableur, bases de données,. . . ). Ce serveur devra être attaqué par 150
stations simultanément. Quel type de bus proposeriez vous pour connecter le disque
dur. La sauvegarde sur bande doit se faire la nuit. Doit elle utiliser le même bus ?
Justifiez.
3. Répondez par Vrai ou Faux aux affirmations suivantes
– Le bus USB est un bus graphique : Vrai
Faux
– Le bus AGP permet de connecter des disques durs rapides : Vrai
Faux
– Le bus SCSI permet de connecter des imprimantes : Vrai
Faux
4. A l’aide d’un utilitaire, on relève les caractéristiques suivnates sur un disque dur.
Quelle est la taille du secteur en octets ?
capacité 850 526 280 octets
cylindres
824
têtes
32
secteurs
63/piste
5. quelle est la capacité utile d’un disque dont les caractéristiques sont
– 4 têtes
– 64 secteurs
– 847 cylindres
– un secteur fait 1024 octets
Solutions
1. (a) Dans un bloc de 256 octets, il est possible de loger 2 articles complets (2 × 90o = 180o). La
place inutilisée est donc de 256o − (90o × 2) = 76 octets. Soit une perte de 29 %.
(b) Dans un bloc de 512 octets, il est possible de loger 5 articles logiques complets (5 × 90o =
450o). La place inutilisée est donc de 512o − (90o × 5) = 62 octets. Soit une perte de 12 %.
On a donc intérêt à "bloquer" un maximum.
2. Le serveur d’applications va devoir faire face à une forte demande d’accès disque, le contrôleur
Ultra 2 Wide SCSI semble donc le mieux adapté compte tenu de ses performances et du débit
qu’il autorise. En ce qui concerne la sauvegarde sur bande, le problème de la sauvegarde sur
bande, le problème peut s’envisager de deux manières :
dans la mesure où on ne dispose pas déjà d’un contrôleur SCSI capable de recevoir plusieurs
périphériques pourquoi ne pas y connecter la sauvegarde sur bande. Sinon, les performances du
SCSI n’étant pas essentielles pour une sauvegarde qui peut prendre toute la durée de la nuit,
un simple bus ISA ou PCI pourrait suffire. Tout dépend du volume à sauvegarder.
3. – Faux
– Faux
– Vrai
4. La réponse est assez simple et se détermine par une suite de divisions.
= 1032192 octets
– le disque comporte 824 cylindres donc chaque cylindre contient 850526208
824
=
32256
octets
– il y a 32 faces utilisées donc chaque piste du disque contient 1032192
32
32256
– chaque piste est divisée en 63 secteurs donc chaque secteur contient 63 = 512 octets
5. On nous indique que le disque de 4 têtes de lecture/écriture : cette information nous fournit le
nombre de plateaux du disque qui est sans doute égal à ce nombre divisé par 2. Quoi qu’il en
soit, nous avons 4 faces utiles.
Ce n’est pas toujours aussi simple dans la mesure où on peut avoir des faces inutilisées sur
certains plateaux ou bien encore disposer de plusieurs têtes/plateau.
On nous précise ebnsuite 64 secteurs/piste et 1024 octets/secteur. Une piste contient donc
64 × 1024 = 65536octets.
847 cylindres ou 847 pistes c’est finalement ce que contient chaque face utile des disques. Comme
chaque piste contient 65 536 octets, une face en contient donc 65536 × 847 = 55508992 octets.
Comme nous disposons de 4 faces utiles, nous avons une capacité totale du disque de 55508992×
4 = 222035968 octets, soit environ 212 Mo.
Gestion de l’Espace Mémoire
techniques de multiprogrammation,
environnements graphiques,
programmes concurrents
pour accèder à la mémoire,. . .




⇒ % taille des mémoire



Problèmes des mémoires centrales :
– lenteur
– taille limitée
– swapping :échange entre mémoires auxiliaires (disque, bande,. . . ) et centrale (RAM)
– éviter les empietements mémoires entre utilisateurs
⇓
Solutions :
– extensions capacité mémoire
– accélérer la vitesse globale par des mémoires rapides (cache)
– partage multi-utilisateurs
Memoire de
masse
Memoire
Centrale
1. le partitionnement fixe (allocation statique de la mémoire) :
– découpage de la mémoire en plusieurs partitions
– inconvénient : fractionnement des processus
2. le partitionnement dynamique (garbage collector) :
– tasse les segments les uns à la suite des autres dès qu’un processus se retire de la mémoire
– gain de place
– coûteux en temps de traitement
Objet 1
Objet 2
Objet 1
Objet 6
Objet 3
Objet 1
Abandon des objets 2 et 5
Transfert des objets 6 et 7
Objet 1
Objet 2
Objet 3
Objet 3
Objet 4
Objet 4
libre
Objet 6
Objet 6
libre
bloc 1
Objet 3
Objet 3
Objet 3
Objet 4
Objet 4
Objet 7
Objet 5
Objet 1
Objet 6
Objet 4
Objet 4
Objet 1
Objet 7
libre
Objet 6
Objet 7
Bloc 2
Ecriture de l’objet 7 en 2 blocs
Objet 5
Abandon des objets 2 et 5
Transfert des objets 6 et 7
Objet 7
Tassement
3. la pagination :
– découpage de la mémoire en segments eux-mêmes découpés en blocs de 128/256 octets, les
pages.
– évite tassement des segments
– utilise table des pages : gère l’ordre logique des pages composant le segment de programme
4. la segmentation
adresse de
fin de segment
Adresse logique
Numero du
segment
Deplacement
Position memoire
adressee
Adresse de
basez du segment
Le numero de segment traduit
par le segment de gestion memoire
donne l’adresse de base du segment
Memoire physique
– adresses physiques=base+déplacement
– stockés dans registre MMU (Memory Management Unit)
5. la mémoire cache (antemémoire)
– accélère temps d’accès en anticipant sur la lecture de l’information
– cache de premier niveau : intégrée dans la puce du µprocesseur (2×8Ko sur Pentium, 2×16Ko
sur NexGen)
– cache de second niveau (SRAM) ≈ 256/512Ko sur la carte mère.
Trois architecture de cache
– direct mapping : cache ↔ mémoire centrale,
−→ une adresse du cache ↔ adresse en mémoire centrale
– fully associative : conserve les bouts de mémoires les plus utilisées par le µprocesseur.
– set associative : + performant, cache divisé en segments pour stocker des données et des
instructions
Controleur de
cache
MEMOIRE CENTRALE
MICROPROCESSEUR
Cache
Cache
2eme niveau
1er niveau
MEMOIRE AUXILIAIRE
Mode d’écriture du cache dans la mémoire centrale
– Write through : recopie systèmatique. Contrôleur de cache très sollicité.
– Write back : recopie du bloc cache que si modification de la donnée
– Write Back Synchrone : + performant
– accélère temps d’accès en anticipant sur la lecture de l’information. La plupart du temps, l’instruction a exécuter ou la donnée est proche de celle en cours de traitement. PLutot que de
charger instruction par instruction à partir de la mémoire auxiliaire, on essaye de charger un
maximum d’instructions et de données à la fois dans une mémoire rapide
– utilsation d’un cache ≈ pagination à plusieurs niveaux
– Principe : quand une instruction recherche une donnée ou fait appel à une autre instruction,
elle recherche cette info. dans la mémoire cache de premier niveau, puis en cas d’échec dans la
mémoire secondaire, . . . , puis recherche en mémoire centrale, et enfin on procède à un chargement (swapp in) de la mémoire auxiliaire vers la mémoire centrale, quitte à devoir procéder au
rangement (swapp out) d’une appel vers la mémoire auxiliaire.
Gestion de la mémoire sous Ms-Dos
Un véritable "casse-tête". . . : coçu initialement pour des µp ne pouvant adresser physiquement plus de 1M o !
2,4,8,...Mo
Zone de mémoire étendue
High Memory Area
64 Ko
Zone de mémoire haute
ROM BIOS
1Mo
Zone de mémoire supérieure
Réservée au système
640 Mo
Zone de mémoire conventionnelle
RAM
Extension mémoire
ROM cartouches
ROM Basic
RAM Video
RAM
Programmes
utilisateurs
RAM Système
O Ko
m
zone mémoire Ms-Dos ≈mémoire système (384Ko)+ mmémoire application (640Ko)
– mémoire conventionnelle : limitée ⇒ charger au max. la mémoire sup. des
variables systèmes (BUFFER, FILES,...) et des drivers (commandes devicehigh
ou loadhigh des CONFIG.SYS et AUTOEXEC.BAT)
– mémoire supérieure (High Memory) : inutilisables pour les applications découpée en segments UMB de 16 Ko (Upper Memory Blocks)
– mémoire étendue (norme LIM ou EMS=Expanded Memory Specification)
– normalement pas accessible par les applications Ms-Dos
– accès par des utilitaires de gestion de mémoire étendue (HIMEM.SYS ou EMM386.EXE).
– découpage en blocs de 16 Ko transférés dans un espace de 64 Ko adressable
dans les 640 Ko de la mémoire conventionnelle
– mémoire d’expansion : située physiquement sur une carte d’extension mémoire
⇓
pas de distinction sous Windows 95 9 et Windows NT˜ : utilisent un adressage
linéaire : accès à toute la plage d’adresse entre 0 et 232 = 4 Go.
Les différents Bus
bus= ensemble de fils reliant les divers composants de l’ordinateur.
3 types assurent la circulation des informations dans le µp :
– bus d’adresse
– bus de données
– bus de commandes
. . . et pour relier le µp à la mémoire : bus d’extension.
Caractéristiques
– nombre de fils employés
– nature des informations véhiculées (données, adresses, commandes)
– mode de fonctionnement (synchrone avec le processeur ou non)
– "intelligent" (bus master) ou non
– parallèle ou série
Les différents bus
– Bus parallèle
– autant de fils que de bits à transmettre
– transmission courte distance (coûteux, peu fiable)
– utilisé dans l’unité centrale
– Bus série
01101100
–
–
–
–
bits transmis à tour de rôle sur une seule voie
transmission à grande distance
codage 0/1 par +V /0
au début, la relation processeur/mémoire pouvait être saturé si le programme faisait de fréquent appels à la mémoire ⇒ canal DMA (Direct Memory Access) d’accès direct à la mémoire
– tendance actuelle : "spécialisation" des bus
1. bus processeur ou privé : spécifique au µp
2. bus local ou d’extension : prolonge le bus privé et relie certains composants (mémoire,. . . ) au processeur
3. bus global : relie les différentes cartes processeurs dans une machine multi-processeurs
(≈ bus local)
4. bus d’entrées-sorties : communication des périphériques "lents" ≈ entrées/sorties série
ou // et bus USB
Type
Largeur
Fréquence
ISA
EISA
MCA
VESA
PCI
SCSI 1
Wide (Fast) SCSI
Ultra SCSI
Ultra-2 SCSI
AGP
16
32
32
32
32
32
32
32
32
32
8-12.5 MHz
8-12.5 MHz
8-12.5 MHz
33 MHz
33 MHz
5 MHz
7 MHz
20 MHz
40 MHz
66 MHz
bits
bits
bits
bits
bits
bits
bits
bits
bits
bits
Nombre
max.
de
connecteurs
8
18
8
3
10
7
3
7
31
7
Taux de transfert
8 Mo/s
50 Mo/s
50 Mo/s
132 Mo/s
132 Mo/s
20 Mo/s
20 Mo/s
132 Mo/s
80 Mo/s 10
528 Mo/s 11
Table 3 – Caractéristiques des Bus
Les différents Bus
1. bus ISA ou PCAT (Industry Standard Architecture) :
Mémoire
centrale
Processeur
et mémoire
cache
Bus processeur
Controleur
Controleur
ISA
Bus d’extension ISA (mp 8MHz,16 bits)
Controleur
graphique
–
–
–
–
–
Controleur
disque
Controleur
entrées/sorties
standard le plus répandu (apparaît en 1984 avec IBM PC-AT)
synchronisé avec le processeur
cartes d’extension configurées matériellement (par micro-switch)
processeur 80286, transfert 8M o/s, largeur 16 bits
utilise un bus d’extension pour processeurs 32 bits (+ rapide)
2. bus MCA (Micro Channel Architecture)
– apparaît en 1987 pour PS/2.
– bus "intelligent" 32 bits, asynchrone, 10 MHz
– supporte carte munies de leurs propres processeurs, chacune configurable logicielement
– supporte jusqu’à 15 controleurs "masterisés"
– ne reconnaît pas le format ISA ⇒ surtout utilisé par Ibm
3. bus EISA (Extended Industry Standard Architecture)
– apparaît en 1988 pour concurrencer MCA
– compatible ISA
– configuration logiciellle des cartes d’extension et bus mastering
4. bus VESA (Video Electronics Standard Association)
Mémoire
centrale
Bus processeur
Processeur
et mémoire
cache
Controleur
Bus d’extension ISA (mp 8MHz,16 bits)
Controleur
VESA
Controleur
VESA
Controleur
VESA
Controleur
ISA
Bus ISA (mp 8 MHz,16 bits)
Controleur
graphique
Controleur
disque
Controleur
entrées/sorties
Controleur
entrées/sorties
Carte
modem
– norme VLB (Vesa Local Bus) 1.0 apparaît en 1993 pour µp 80486 : bus local 32
bits, extensible à 64 bits. C’est un prolongement du bus processeur
– synchrone
– peu coûteux
– autorise l’utilisation du DMA et le bus mastering
– pilote 3 connecteurs
– norme VLB 2.0 : bus 64 bits ; débit 264 Mo/s !
– en perte de vitesse face à PCI, compatible avec d’autres µp.
5. bus PCI (Peripheral Component Interconnect)
Mémoire
centrale
Processeur
et mémoire
cache
Bus processeur
Controleur
PCI
Local bus PCI (mp 33 MHz,32/64 bits)
Controleur
réseau
Controleur
disque
Controleur
graphique
–
–
–
–
Controleur
Controleur
ISA
Bus ISA (mp 8 MHz,16 bits)
Controleur
entrées/sorties
Controleur
entrées/sorties
Carte
modem
mémoire
norme 1.0 développée par Intel en 1993
indép. du processeur : possède son propre buffer → "pont" PCI
compatible avec d’autres architecture de bus (type ISA,. . . )
autoconfigurable (plug and play) : cartes automatiq. détectées et exploitées
6. bus SCSI (Small Computer System Interface)
– de plus en plus employé par les constructeurs
– supporte divers périphériques
– vitesse de transfert entre 4 et 80 Mo/s entre 3 et 12m.
– inconvénient : longueur du bus ∝ inversement avec la fréquence. Exemple : UltraSCSI supporte 7 périph. à 1,5m ou 3 périph. à 3m.
⇓
norme actuelle Ultra 2 SCSI-LVD diminue la tension employée (LVD=Low Voltage Differential) : fonctionne en mode "différentiel" ⇒ & parasites électromagnétiques
– l’interface Ultra 2 SCSI : contrôleur intelligent pouvant fonctionner en autonome
– transfert entre 2 unités SCSI sans intervention mémoire centrale
– gestin optimisée des transferts entre périphériques et UC
7. bus USB (Universal Serial Bus) 12
– bus récent, successeur des bus séries et //
– supporte 127 périphériques chaînés sur un canal
– plug and play → reconnaît automatiquement le périphérique et choisit le "bon"
pilote
– informations codées en NRZI, débit entre 1,5 à 12 MBps / cables en paire torsadée (` < 5m entre périphériques)
– connecteur rectangulaire à 4 broches : fonctionne sur le principe des "transactions" des réseaux locaux, autorisant un dialogue simultané sur le même bus.
PID
8 bits
PID
8 bits
Adresse
7 bits
Endpoint
4 bits
Numero de Trame
11 bits
PID
8 bits
Donnees
de 1 a 1023 octets
PID
8 bits
ACK,NAK ou STALL
CRC
5 bits
JETON
CRC
5 bits
SOF
CRC
16 bits
DONNEES
ACQUITTEMENT
– 1 transaction (=envoi de 1 à 3 paquets) commence par un jeton qui décrit le
type et le sens de la transmission et l’adresse du périphérique destinataire.
– chaque jeton contient un identificateur de paquet PID (Packet Identificator) de
8 bits :
IN
lecture d’un périphérique
OUT
écriture vers un périphérique
SOF (Start Of Frame) début d’une trame USB
SETUP
paquets de commandes
– adresse codée sur 7 bits ⇒ 127 périphériques
– transmission synchrone ou non
8. bus FireWire-iLink
– norme IEEE 1394 dédiée aus périphériques rapides tels que imagerie, PAO,. . .
– se présente sous la forme d’une carte d’extension, pas dans la carte mère
– intègre modèle OSI 7 couches
– plug and play
– débits 10 à 20 fois > UB
9. bus AGP (Accelerated Graphics Port)
connecteur AGP
Pentium II
Bus P6 Pentium
RAM
video
Pont
AGP
Controleur mémoire
Chipset
PCI/AGP
RAM
Carte graphique
Controleur PCI
BUS AGP
528 Mo/s
Bus PCI (132 Mo/s)
10. bus récent (1997) spécialisé dans l’affichage
11. relie à travers le chipset le processeur de la carte graphique avec le processeur de
l’UC et la mémoire vive
12. mode pipeline ⇒ lecture/écriture simultanées en mémoire
13. décharge la mémoire graphique au profit de la mémoire centrale ⇒ pas de saturation
synchrone → un processeur a 33 MHz fonctionnera avec bus VESA synchrone a 33
MHz .
CRC : code de contrôle de fin de trame
Exemple de transaction entre UC et imprimante : la carte mère envoie un jeton
OUT pour indiquer au périphérique une opération d’écriture. Le jeton va être suivi
d’un paquet de données DATA0. Le périphérique va répondre par un ACK si la données
est bien reçue, un NAQ s’il ne peut recevoir de données (occupé) ou un STALL (défaut
de papier, d’encre,. . . ) nécessitant une intervention utilisateur.
Si le paquet contient une erreur de CRC, le périphérique ne le traite pas et la carte mère
va constater au bout d’un laps de temps (times out) qu’elle n’a pas reçue l’acquittement.
Elle recommencera la transmission.
Les microprocesseurs
regroupent sur qqs mm2 UAL, UC, mémoire.
– % puissance, & encombrement ⇔ Loi de Moore
– Intel 8086 = "père" des microprocesseurs actuels
Comment fonctionne le 8086 ?
– 1978 (famille iAPX) : apparition du 8086, 29 000 transistors, boitier 40 broches
– compatibilité logicielle des i8086 et 8088
– largeur des bus : 8 bits pour le 8088 (faux 16 bits)et 16 bits pour le 8086 (vrai
16 bits).
– 8088 : faux 16 bits car bus de données interne sur 16 bits, mais externe sur 8
bits ⇒ il faut donc 2 accès mémoires pour traiter un mot de 16 bits.
– l’architecture interne comporte
– l’unité d’exécution (Execution Unit ou EU) qui exécute les fonctions arithmétiques et logiques
– l’unité d’interface bus(Bus Interface Unit ou BIU) qui stocke 6 octets
d’instructions dans une file d’attente constituée de 6 octets de mémoire interne
– Pendant que l’unité d’exécution exécute une instruction, l’unité d’interface bus
va chercher dans le segment de programme une partie des octets composant la
prochaine instruction à exécuter ⇔ mode de fonctionnement pipeline
⇓
accélère les traitements
Notions d’horloge, pipeline, superscalaire,. . .
Pour accélérer l’exécution des programmes dans le µp, on peut
1. % fréquence horloge : 4,77 MHz sur les premiers µp à 1GHz (Athlon)
⇓
% consommation (parfois + de 30 Watts !) → & tension alim. (passée de 5V à
2,8V) et & taille pistes silicium (passée de 0, 60µ à 0, 13µ).
2. Pipeline et superpipeline (anticipation dans le processeur) : repose sur le "découpage" de l’instruction en micro-opérations de taille fixe (cf fonctionnement UC).
5 phases
– chargement de l’instruction (prefetch)
– décodage de l’instruction (decode)
– génération des adresses (address generate)
– exécution (execute)
– réécriture diférée du résultat (result write back)
m
pipeline à 5 étages ⇒ on peut traiter simultanément 5 instructions (Exemple de
la station de lavage).
L’unité de traitement doit être composée
– d’une unité d’instruction qui gère la file d’attente
– d’une unité d’exécution qui s’occupe du traitement de l’instruction
On parle de superscalaire quand le µp est capable d’assurer un découpe + fin des
instr.
3. Scalaire et superscalaire fait travailler plusieurs unités d’exécution en // dans le
µp. Exemple : 3 instructions peuvent être traitées en //, comme le calcul sur des
entiers par le CPU (Central Processing Unit) + calcul sur des nombres flottants
par la FPU (Floating Processing Unit)+instruction de branchement.
↓
% nombre d’unité de traitement (cas du Pentium Pro)
La gamme Intel : du i286 au Pentium II
– 1982 : développement du 80286, vrai 16 bits. Bus d’adresse porté à 24 bits
– 1985 : sortie du 80386 DX, vrai 32 bits.
– Puce intègrant 270 000 transistors
– Charge par anticipation les 16 octets suivant (pre-fetch)
– Compatible avec 80286 et mode virtuel 8086
– 1988 : présentation de la version réduite 80386 SX avec bus externe 16 bits, moins chère
– 1990 : commercialisation du 80386 SL, intègrant gestionnaire de mémoire virtuelle et un mécanisme d’économie d’énergie (destiné aux portables)
– 1989 :commercialisation du 80486 DX vrai 32 bits, puce 168 broches (puce de 619µ × 414µ),
1,2 millions de transistors. Elle offre
– une unité de calcul des entiers
– une unité de calcul des flottants (FPU Floating Processor Unit) compatible avec coprocesseur
mathématique 80387
– 8 Ko de cache en SRAM rapide
– un contrôleur de mémoire cache et de mémoire virtuelle (MMU, memory Management Unit)
– 1992 : le 80486 DX2 25/50 à 33/66 MHz 13 possède un doubleur de fréquence (overdrive). le
80486 DX4 peut tripler sa fréquence interne ⇒ fréquence d’exécution à 100 MHz pour une carte
fonctionnant à 33 MHz.
– 1993 : Intel sort le Pentium, avec bus de données externe de 64 bits mais des registres de 32
bits.
– architecture superscalaire 2 caches séparés de 8 Ko
– une unité de calcul en virgule flottante et 2 pipelines
– 1995 : Pentium Pro (P6) intègre 256 Ko de cache secondaire, 8 Ko de cache pour les données et
8 Ko pour les instructions. Technologie 0, 35µ en 3,1 V.
– Pentium MMX (MultiMedia eXtension) qui implémente ≈ 60 inst. dans le silicium ⇔ SIMD
(Single INstruction Multiple Data) pour améliorer le traitement du son ou des images.
– Depuis 1991, AMD, Cyrix clônent le Pentium. tendance actuelle : disparition des 386 et des 486
vers les µp RISC ou pseudo RISC de type Pentium Pro, Power PC, AlphaDigital ou
autres. . .
Processeur
bus
horloge
adressage
80286
80386 DX
80386 SX
80386 SL
80486 DX
80486 DX2
Pentium
Pentium Pro
vrai 16 bits
vrai 32 bits
faux 32 bits
faux 32 bits
vrai 32 bits
vrai 32 bits
vrai-faux 64 bits
vrai-faux 64 bits
8 à 20 MHz
16 à 33 MHz
16 à 33 MHz
16 à 25 MHz
20 à 100 MHz
50 à 66 MHz
60 à 200 MHz
150 à 200 MHz
16 Mo
4 Go a
a. Du fait de son adressage physique.
b. Soit 100 fois la puissance des PC des années 80 !
mémoire Puissance
virtuelle
1 Go
64 To
3 à 4 Mips
15 à 25 Mips b
– 1998 : Pentium II associe Pentium Pro et MMX. Communique avec le PC avec un bus DIB (Dual
Independant Bus) ⇒ les données circulent dans le processeur sur plusieurs flux. Bus externe à
100 MHz ⇒ présence d’un nouveau chipset 450 NX 14 .
Céléron = Pentium II -(mémoire cache 20 niveau).
– Avenir d’Intel˜ : merced, processeur 64 bits, techno. massivement // EPIC (Explicitely Parallel Instruction Computing). D’après Intel, le Merced devrait disposer de "...pleins d’unités
CPU associées à 128 registres et plusieurs unités FPU utilisant également 128 registres.
Gravure à 0, 13µ.
Bus processeur
66 MHz
Pentium
Bus processeur
Chipset
66 MHz
Bus PCI 33 MHz
Carte
son
Cache L2
(256 ou 512 Ko)
200 MHz
Mémoire RAM
33 MHz
Chipset
Carte
Vidéo
PCI
Pentium II
400 MHz
100 MHz
66 MHz
Cache L2
(256 ou 512 Ko)
Mémoire
SDRAM
100 MHz
33 MHz
66 MHz
Pentium
Bus PCI 33 MHz
carte
réseau
Carte
Vidéo
AGP
Carte
son
carte
réseau
Pentium II a 400 MHz
La puissance des puces continuent de s’accroitre et leur enconmbrement diminue
Mode pripeline
A chaque cycle d’horloge, le processeur fait avancer l’instruction en cours d’une action élémentaire
et commence une nouvelle instruction. Exemple de la station de lavage : on peut donc savonner la
5ème voiture qui se présente pendant que la quatrième est au lavage, la troisième au rinçage, la
seconde au sèchage et la première au lustrage.
Inconvénient : ii arrive qu’une instruction doive attendre pour être prise en charge qu’une précédente soit finie d’exécuter.
La gamme Motorola : Processeurs 68000. . .
Motorola˜ : en 1979, premier fabriquant de microprocesseurs 32 bits, le MC
68000 (Commodore Amiga, Apple, Attari)
– le MC 68000 intègre
– 68 000 transistors
– faux 32 bits (16 externe et 32 interne), bus 24 bits pour un espace d’adressage
16 Mo.
– cadencé entre 8 et 10 MHz
– 1982 : sortie du MC 68008 bon marché, 8 bits en externe (⇒ 8 accès mémoire)
– 184 : commercialisation du 68020 avec gestionnaire de mémoire virtuel intégré et
un cache.
– 1990 : le 68040 intègre 1 200 000 transistors, 2 caches de 4 Ko pour instructions
et données
– 1992 : association avec Ibmpour produire le POWER-PC intégrant 2 800 000
transistors en techno. RISC
Processeur
MC 68000
MC 68008
68020
68040
POWERPC 601 b
a. Bus d’adresse 20 bits.
b. En association avec Ibm.
bus
faux 32 bits
faux 32 bits
vrai 32 bits
vrai 32 bits
vrai 32 bits
horloge
8 à 16,67 MHz
8 à 10 MHz
16,67 à 33,33 MHz
50 à 80 MHz
adressage
16 Mo
4 Mo a
4 Go
4 Go
pipeline
3 étages
3 étages
4 étages
6 étages
6 étages
Les coprocesseurs
Les coprocesseurs ou FPU (Floating Processor Unit) sont spécialisé dans le traitement des calculs arithmétiques en virgule flottantes.
– évolution // à celles des µp → Intel 80387, Weitek 3167, ou Cyrix EMC87,. . .
– dans un µp on ne trouve que +, −, ×, ·· . Le coproceseur offre des instructions
supplémentaires de calcul (cos, sin, log, . . . ), et surtout pour de gros tableaux de
chiffres (Exemples : CAO, DAO,. . . ) ⇒ gain de temps de 100
– souvent intégrés aux processeurs : 486DX, Pentium, Pentium Pro,. . .
Les microprocesseurs RISC
6∈ famille des CISC (Complex Instruction Set Computer) ⇔ jeu d’instructions étendu
et intègre dans le silicium le traitement des instructions
Or, 80% des traitements font appel à seulement 20% des instructions possèdées par
le µp
⇓
Technologie RISC (Reduced Instruction Set Computer) → jeu d’instructions cablées
très réduit
– donc le jeu d’instructions occupe 5 à 10% de la surface d’un circuit contre 50%
pour un CISC
⇒ intègre sur une même puce des caches mémoires+ registres. . .
– les fleurons : R/4000 de Mips, Supersparc de Sun, RIOS d’Ibm,POWER PC
d’Ibm-Motorola,. . .
– Exemple : le RISC ALPHA 21264 de Digital
– cadencé de 625 à 1 000 MHz
– 30 000 000 de transistors / une puce de 431 broches
– adressage virtuel 64 bits (18 milliards de milliards d’octets)
– sélection de la vitesse et de la largeur du bus à 64 ou 128 bits
– 64 registres norme ieee et vax
– une mémoire cache de 8 Ko de niveau 1 pour les données
– une mémoire cache de 8 Ko de niveau 1 pour les instructions
– cache intégré de niveau 2 de 96 Ko
– pipelin 7 niveaus pour instructions mémoires et 10 niveaux pour opérations en
virgule flottante
– mesure des performances intégré à la puce
– horloge de 200 à 800 MHz
Les microprocesseurs classiques utilisés sur PC font partie de la famille des CISC.
le RISC ALPHA 21264 de Digital : 21=21ème siècle, 64 pour 64 bits
Le rôle des Chipsets
composant important des cartes mères souvent négligé lors du choix d’un microordinateur.
– gère la coopération entre les divers compposants : processeur, bus, mémoire cache
ou vive,. . .
– permet de piloter des bus reliant µp à la SDRAM à des fréquences de 100 MHz
– Exemple : Intel 430 HX ou Triton II, Intel 430 VX ou Triton III
oge int.(MHz)
oge ext.(MHz)
ansistors (×103 )
eur bus adresse (bits)
ssage physique (Go)
ssage virtuel (To)
eur bus ext. (bits)
eur bus int. (bits)
bus mémoire (MHz)
e cache données (Ko)
e cache données (Ko)
e données (Ko)
rocesseur intégré
rscalaire
line (# étages)
st. /cycle
ion alim. (en V)
itecture CISC/RISC
nologie µ
en service
5-3,3
CISC
0,6
1992
486 DX/4/100
Intel
75-100
25-33
> 1200
32
4
64
32
32
33
8
même cache
externe
oui
non
5
1994
65
2 × 32
67
16
16
externe
MMX
64
2 × 32
66
8
8
externe
oui
oui
5
3
3,3-2,9
CISC
2,8
MMX
0,35
P 200 MMX
Intel
200
200
> 4500
33
5
Pentium 133
Intel
133
133
> 3100
32
4
2,8
CISC/RISC
0,35
1997
8
8
256
oui
oui
8
8
256
oui
oui
3,1-2,9
CISC/RISC
0,6
1995
64
2 × 32
32
4
P II
Intel
233-300
1/2 fréq. µp
64
2 × 32
P Pro
Intel
150-200
60
5500
32
4
16
16
oui
non
oui
oui
> 2200
36
4106
16103
64
64
1680
34
4106
16103
64
64/128
8
8
R4400 SC
Intel
200
Alpha 210164
Intel
333
0,6
1993
oui
32
même cache
4
256
32/64
2800
32
Power Pc 601
Intel
66
Le multi-processing
C’est le fonctionnement conjoint de plusieurs processeurs dans le même ordinateur.
– architecture parallèle
– architecture partagée
1. Architecture parallèle ou massivement parallèle (clustering ou MPP) :
Processeur
1
Cache
RAM du
processeur 1
Processeur
2
Cache
RAM du
processeur 2
– chaque processeur dispose de sa propre mémoire, de son bus système et ses unitées E/S
personnelles
– connexions à haut débit pour relier les µp
– risque : incohérence de certains traitement (car ils ne partagent pas la même mémoire) ⇒
gestion de ce type d’architecture logiciellement
– mémoire distribuée
2. Architecture partagée :
Processeur
1
Cache
RAM
Processeur
2
Cache
– les processeurs se partagent la mémoire, le bus système et les E/S
– gestion des conflits selon 2 méthodes :
– traitement asymétrique
Processeur
1
Noyau du systeme
d’exploitation
Processeur
2
Gestion des
entrees−sorties
Chaque µp est chargé d’une tâche par le système ⇒ écriture de programmes spécifiques
pour chaque processeur !
Exemple
– l’un est chargé des E/S
– l’autre gère le noyau du système d’exploitation
– ...
Les interruptions sont prises en charge par un processeur spécialisé.
– traitement symétrique SMP (Symetrical Multi-Processing)
Processeur
1
Processeur
2
PLAN IFICATEUR
Gestion des
entrées−sorties
Gestion
mémoire
Gestion des
interruptions
...
– la plus utilisée
– symétrique ⇒ aucun processeur n’est prioritaire par rapport aux autres
– ...
Un planificateur (scheduler) assure la distribution des tâches.
Architectures MIMD et SIMD
– Multiple Instruction Multiple Data (MIMD) : les processeurs travaillent indépendamment les
uns des autres et traitent en // plusieurs flots de données et plusieurs flux d’instructions.
– Single Instruction Multiple Data (SIMD) : les processeurs exécutent en même temps la même
instruction mais sur des données différentes.
Figure 8 – Topologies des supercalculateurs.
Les performances de ces réseaux sont mesurées à partir de 3 paramètres :
– la latence L : temps de préparation d’un échange de message.
– la bande passante B : vitesse de transfert entre deux nœuds. cubes
– le temps T (N ) nécessaire pour transmettre une message de N Mo entre deux processus qui
s’exécutent sur deux processeurs différents.
Il vaut
N
T (N ) = L + .
B
Exemples :
Cray T3D : L = 1µs, B = 300 Mbytes/sec.
Grappe de stations : L = 100µs, B = 1 Mbytes/sec.
Les principales différences entre les machines MIMD sont :
– la topologie et les performances (latence, bande passante) du réseau d’interconnexion.
– la qualité et la quantité des mécanismes hardware pour cacher les latences des communications.
– l’existence d’un espace d’adressage global, conduisant à une mémoire physiquement distribuée
mais logiquement partagée.
Mesures des performances : un certain nombre de tests (benchmarks) sont proposés par les
constructeurs. Exemple : WinBench, Winstone96,CPU Mark16 , CPU Mark32 ,. . .
– MIPS (Millions of Instructions Per Second) : peu significative car moyenne des choses 6= (inst.
branchements, calculs sur entiers ou flottants)
– SPECint (Standard Performance Evaluation Corporation/Integer) : tests sur des séries d’entiers,
très employés.
– SPECfp (Standard Performance Evaluation Corporation/Floating)
– Dhrystone : calcul sur des entiers
Un processeur peut être inactif et l’autre totalement saturé de travail.
Figure 9 – Topologies : maillages 2D et 3D, tores 2D et 3D, hypercubes, Anneaux, Multi-niveaux.
Mémoires : généralités et mémoire centrale
=Dispositif capable d’enregistrer des informations, de les conserver et de les restituer à la demande :
– mémoire centrale : très rapide, physiquement peu encombrante mais coûteuse = mémoire de
travail de l’ordinateur
– mémoire de masse ou auxiliaire : lente, encombrante mais bon marché = mémoire de sauvegarde
de l’information.
Caractéristiques de la mémoire :
– capacité : 1 mot = 2 octets, 1 octet= 8 bits
kilo-octet
Ko 1024 o
210 octets
méga-octet Mo 1024 Ko 220 octets
giga-octet Go 1024 Mo 230 octets
téra-octet
To 1024 Go 240 octets
péta-octet Po 1024 To 250 octets
exa-octet
Eo 1024 Po 260 octets
– volatilité = duréependant laquelle la mémoire est capable de retenir l’information de façon
fiable (sans courant).
– temps d’accès : temps nécessaire pour accèder en mémoire à l’information cherchée.
REGISTRE
CACHE PROCESSEUR
MEMOIRE CENTRALE
30 ns
500 ns
Cout croissante
rapidite croissante
Capacite
croissante
CACHE−DISQUE,
75 ms−1ms
MEMOIRES ELECTRONIQUES
UNITES DISQUES
5ms−30 ms
BANDES, CASSETES,
DISQUES OPTIQUES, DVD, etc.
1s−5s
Figure 10 – Hiérarchie des mémoires (temps d’accès indicatifs)
.
A notre échelle : accès à l’information en 1s par mémoire centrale ⇔ accès à l’information en
12 jours par mémoire de masse !
– type d’accès
– séquentiel : exemple de la bande magnétique
– direct : cas de la mémoire électronique
– encombrement physique
– prix de revient de l’information mémorisé : les mémoires électroniques ont un coût de stockage
au bit élevé ⇒ faible capacité
⇓
Table 4 – Choix des constructeurs
Mémoires centrales
(électroniques)
Avantages
Inconvénients
très rapide
volatiles
peu volumineuses chères
direct. adressable faibles capacité
Mémoires de masse
(magnétiques ou optiques)
Avantages
Inconvénients
peu chères
volumineuses
non-volatiles
lentes
grande capacité
– mémoire centrale = ensemble de cases (cellules mémoires) qui stockent l’information (1 bit, 12
octet,. . . ).
– cellule élémentaire = le transistor capable de stocker un bit !
– mot mémoire : quantité d’info contenue dans une cellule logique et identifiée par une adresse.
Adresse
mot mémoire
0 1 1 0 0 1 1 0
– Une mémoire / disque magnétique est non-volatile : une fois enregistrée, l’information est conservée même si on retire la disquette du lecteur. La mémoire de travail de l’ordinateur est volatile.
– idéal = machine alliant tous les avantages → solution trop coûteuse
– inconvénient DRAM : courant de fuite ⇒ il se décharge ! si un bit est a 1, il s’efface peu à peu
et risque de voir passer sa valeur à 0.
– Avec l’apparition de cartes mères à 100 MHz, besoinde mémoire encore plus rapide
– les futurs PC devraient pouvoir disposer d’une mémoire de plusieurs Go, au moins autant que
la capacité des DD actuels
Les mémoires vives : RAM (Random Access Memory)
– composant qui évolue en fonction des processeurs et des chipsets
– lues ou écrites à volonté mais volatiles
– temps d’accès très rapides
– consomment peu d’énergie
⇒ servent de mémoire de travail (centrale ou cache)
2 types
– mémoires vives statiques (SRAM ou Static Random Access Memory)
– la cellule de base= bascule à transistors
– pendant ≈ 100 h → conservation de l’info sans coupure
– accès rapide : entre 6 et 15 ns.
– difficulté d’intégration, faible capacité ⇒ mémoire cache par exemple
– mémoires vives dynamiques (DRAM ou Dynamic Random Access Memory)
condensateur
Transistor
– la cellule de base= charge d’un condensateur
– inconvénient : courant de fuite ⇒ il se décharge !
⇓
relecture et réécriture régulière des informations, ce qui ralentit les temps d’accès (≈ 40 − 60
ns). C’est le FPM (Fast Page Mode)
– en perte de vitesse au profit de la RAM EDO et de la SDRAM
– et les autres. . .
1. EDO (Extended Data Out) et BEDO (Burst EDO ) :
– EDO = DRAM complétée par une rangée de bascules en entrée pour le chargement d’une
nouvelle adresse en mémoire sans attendre le signal de validation de la lecture.
⇒ temps d’accès entre 45 et 70 ns, et période d’attente entre 2 cycles minimisée ⇒ 50
MHz au lieu de 25 MHz
– BEDO : quasi-disparu
2. SDRAM (Synchronous DRAM) :
– évite les états d’attente (Wait State) en se synchonisant sur le processeur ⇒ 500 MHz,
temps d’accès de 10 à 12 ns
– synchronisation "théorique" avec un bus à 100 MHz (en réalité 75-80 MHz)
3. RDRAM (RambusT M DRAM) développé par Rambus
– nécessité contrôleur mémoire spécifique ⇒ emploi limité ordinateurs de jeu ,. . .
– 10× plus rapide qu’une DRAM classique
4. le futur des mémoires DRAM
– les fondeurs Samsung, Nec et Toshiba sont associés → mise au point d’un nouveau
standard DDR (Double Data Rate)
But : ×2 le taux de transfert (≈ 1,03 Go/s)
– capable de lire sur le front montant et descendant du signal d’horloge
– Intel préfère la DRDRAM (Direct RambusT M DRAM) : taux de transfert de 1,6 Go/s,
temps d’accès < 5 ns, fréquence 200 MHz
– SLDRAM (SyncLink DRAM) : produit concurrent
– Hewlett Packard développe une mémoire 3D : on empile les puces mémoires → capacité
de 1 Gbits dans le volume d’une boîte d’allumettes
– Samsung débveloppe un circuit mémoire de 1 Go en gravure 0, 18µ.
5. mémoires VRAM, WRAM, SGRAM
– VRAM (Video RAM) = DRAM pour affichage dans les cartes graphiques.
Elle possède 1 port pour la lecture des données en vue de leur affichage et du rafraîchissement de l’image, 1 port pour l’entrée des données à afficher venant du processeur
– WRAM (Window RAM) = VRAM avec les caractéristiques de l’EDO. Taux de transfert
960 Mo/s.
– SGRAM (Synchronous Graphics RAM) = SDRAM pour cartes graphiques avecun accès
aux données par blocs
Mémoire
centrale
Mémoires Mortes
Mémoires Vives
SRAM
VRAM
WRAM
DRAM
RAM edo
BURST edo
PROM
ROM
SDRam
RDRam
PROM
fusible
EPROM
EEPROM
Organisation des mémoires vives
La mémoire est organisée en blocs de ` lignes et p colonnes.
Accès piloté par un contrôleur mémoire
Organisation de la mémoire FPM
Décodeur d’adresses
Adresse
ligne
cellule
élémentaire
Décodeur d’adresse
logique de
commande
Read/write
CS
Adresse
colonne
– Années 80 : mise au point du mode FMP (Fast Page Mode) : permet de conserver
l’adresse ligne et de lire les bits par p+i, i = 1, 2, . . . (utilisé chez les micro équipés
de DRAM classique)
– 1995 : mode EDO ou HFPM (Hyper FPM) : ajout de bascules / les entrées lignes
⇒ gain en rapidité sur la lecture d’une ligne
– Physiquement : ce sont des barettes SIMM (Single Inline Memory Module) de 8
ou 32 bits.
– Avec des Pentium, formation en "bancs de mémoire" (banks memory)
– Aujourd’hui : barettes au format DIMM (Dual Inline Memory Module) : 2× plus
de connecteurs ⇒ accès mémoire par blocs de 64 bits 15
→ format des SDRAM
– bientôt : format RIMM = lecture des bits en série. . .
Les mémoires mortes ou ROM (Read Only Memory)
=Mémoires qui ne peuvent qu’être lues.
– mémoire ROM
+V
10 0 1
Matrice memoire
−V
1
0
0
1
Stockage définitif à la fabrication de la mémoire par le constructeur
– principe de la matrice à diodes : un réseau de diodes est constitué selon les mots
mémoires que l’on veut stocker aux différentes adresses.
– Exemple : mot mémoire n0 2 (d’adresse 2)
difficulté de conception
→ fabriquer des mémoires mortes programmables
– mémoire PROM (Programmable ROM) :
Ecriture de la ROM faite par l’utilisateur au moyen d’un programmeur de PROM
– matrice complète de diodes
– programmer = fusion de la diode.
– Utilisés que pour de petites séries
– les EPROM (Erasable PROM)
EPROM
– effaçables une fois écrites au moyen d’un effaceur d’EPROM (=tube à rayons
UV) → fenêtre de quartz
– pour petites séries
– les EEPROM (Electrically EPROM)
– effaçable électriquement, octet par octet
– mémoire non-volatiles et cependant facilement réutilisables
– pas bon marché et capacité limitée à 2 Mo
– mémoire Flash (1993)
Au carrefour des technologies EEPROM, DRAM, SRAM
– mémoire effaçable et programmable électriquement par bloc de 64 Ko
– conçue comme de la DRAM, pas de rafraîchissement (comme SRAM), suppression possible de l’alimentation (comme EEPROM)
– 1 transistor par point mémoire contre 2 pour EEPROM ⇒ capacité à 40 Mo
(512 Mo prévue pour fin 2000)
– elle ne peut remplacer la RAM ou la SDRAM car
– cycle de vie limité à 100 000 écritures
– on doit lire par bloc et non bit à bit.
– en passe de remplacer les DD dans les portables (MTBF de 1,6 millions d’heure
contre 500 000 pour un DD)
– prix de revient encore élevé ("le Mo Flash"10 à 20× plus cher que le Mo DD)
Les mémoires spécialisées
– les regsistres = bascules de transistors. Mémoires très rapides utilisées dans les
caches.
– registres CDD (Charge Coupled Device) ou mémoires à propagation :
l’inforamtion binaire repose sur la présence ou non de charges électrostatiques
dans un substrat.
– grande densité d’intégration
– très grande vitesse d’accès
– Applications spécifiques : camescopes, scanners,. . .
Disques durs et contrôleurs
Enregistrement sur des disques magnétiques circulaires (en aluminium) de 1”, 1.8”,
2.5”,3.5” ou 5.25 “ de ∅, voire 30 cm pour les gros systèmes.
→ format Pcmcia type carte de crédit de 6 mm d’épaisseur !
1. technologie classique : plateau recouvert d’une couche d’oxides de fer magnétisable
(0,5 à 0,75µ)
2. technologie TFI (Thin Film Inductive) :
– tête unique de lecture/écriture par plateau
– chaque plateau est recouvert d’une couche de 0,05 à 1µ de phosphore de nickel
⇒ densité d’enregistrement 800 Mbits/pouce2 .
3. technolgie magnéto-résistive (MR) :
– tête de lecture séparée de la tête de celle d’écriture ⇒ densité de stockage de 1
Gbits/pouce2
4. technologie GMR (Giant Magneto-resistive) en 1997 : atteint les 5 Gbits/pouce2
pour DD "haut de gamme".
5. IBM en 1998 atteint les 11,6 Gbits/pouce2 en combinant GMR et TFI → autorise
le stockage de 725 000 pages/pouce2 d’espace disque.
6. technique de lecture PMRL (Partial Response Maximum Likelihood) améliore la
qualité du signal → élimine le bruit et les parasites
7. technique SMART (Self Monitoring Analysis and Reporting Technology) : assure
une gestion statistique des incidents
Date densité en Gbits/pouce2 épaisseur tête (µ) largeur piste (µ)
1993
2,6
0,08
1,35
1998
10
0,04
0,68
2004
40
0,02
0,34
piste
secteur
Cylindre forme par
un ensemble de
pistes
plateau
Dans un DD,
– chaque face est divisé en pistes circulaires concentriques de 10 à 1000 pistes/face
– chaque piste est divisée en secteurs (de 8 à 34)
– toutes les pistes ont même capacité ⇒ densité nearrow en se rapprochant du
centre
– c’est le rôle du formatage
– qqs mm séparent 12 plateau pour laisser passer les têtes de lecture/écriture ⇒
accès simultané à l’ensemble des informations sur les pistes se trouvant sur la
même verticale
– les bits sont enregistré linéairement (le nbre dépend de la densité linéire en BpI,
Bits per Inch)
– chaque secteur doit être lu ou écrit en conservant une vitesse angulaire constante
CAV du plateau (si ω = cte ⇒ v = ω × R %)
– ω ≈ 3600 à 10000 tours/mn.
– les têtes sont maintenues à une certaine hauteur du plateau (hauteur de vol) de
l’ordre 0, 25 à 1µ 16
– la pile est enfermé dans un boitier étanche (technologie Winchester)
– une piste spéciale (land zone) permet aux têtes de se poser, arrêt amortit par un
film d’air.
Tete de
lecture/ecriture
Altitude de vol
0,2 mu
Fumee
Poussiere
0,6 mu
Cheveu
70 mu
Modes d’enregistrements des disques
1. FM (Frequency Modulation) : ou simple densité.
– la plus ancienne
– polarisation dans un sens à chaque signal d’horloge et à chaque 1 logique
2. MFM (Modified Frequency Modulation) ou double densité
– polarisation au milieu du temps de base à chaque 1
– si 2 zéros se suivent, il y a polarisation au signal d’horloge pour les séparer.
3. M2FM (Modified MFM)
– réduit nombre de transitions à l’enregistrement
– les débuts des temps de base sont enregistrés uniquement en cas de 0
4. RLL (Run Lenght limited-code à longueur limitée)
– le code le plus efficace (%50% par rapport au MFM la densité d’information)
1
1
1
1
0
0
0
0
1
0
1
0
Formats d’enregistrements des disques
En plus des données à mémoriser, les pistes et les secteurs contiennent des informations nécessaires au système pour
– repérer les secteurs disponibles
– repérer les fichiers présents
– connaître les caractéristiques du média
Un secteur fournira
1. intervalle de secteur : sert de marque de début et de fin de secteur (18 octets à 0)
2. marqueur de label : permet de reconnaître l’adresse de l’information. Contient
– numéro du disque
– numéro de cylindre
– numéro de piste
– numéro de secteur,. . .
3. code de détection d’erreur permet d’asurer le contrôle des labels et des données
4. synchronisateur final :zone permmettant le passage de la fonction de lecture d’adresse
à celle d’écriture
5. intervalle 2 : contient des 0. Utilisé comme zone de débordement.
6. marqueur de données : rôle du tape mark des bandes
7. zone de données : 256 ou 512 octets de long
Lors du formatage sous Ms-Dos, seuls qqs secteurs de la FAT sont effacés
capacité (théorique) d’une DD ≈ 20 Go, soit 2 000 fois > à la capacité de l’Ibm
Ramac (1956).
Caractéristiques des disques
1. capacité ou volume de stockage : dépend de la densité linéaire, radiale.
2. desnsité linéaire ρ` (en BpI) : nombre de bits/pouce sur une même piste. Atteint
20 000 BpI.
3. desnsité radiale ρr (en TpI) 17 : nombre de piste par pouce. Entre 2 000 et 3 000
pi.
4. densité surfacique = ρρr` . Environ 5 Gbits/pouce2 en labo. % densité de 60%/an
actuellemnt. densité×18 entre 1991 et 1997, le prix du Go a été divisé par 31 !
5. vitesse de rotation : vitesse de rotation du disque en tpm. Entre 4500 et 15 000
tpm.
6. temps d’accès : temps nécessaire pour positionner la tête de lecture sur le cylindre
désiré. Au minimum de 1,5 à 20 ms.
7. délai rotationnel ou latence : temps nécessaire pour que la donnée recherchée se
trouve sous la tête de lecture → prendre en moyenne une demi-révolution
8. vitesse de transfert ou taux de transfert : vitesse à laquelle les information transitent du média à l’ordinateur (en MBps ou en Mo/s).
– dépend du mode d’enregistrement, du type de contrôleur, de la vitesse du plateau. Actuellement de 16 Mo/s à 32 Mo/s
9. facteur d’entrelacement : les DD sont parfois trop rapides pour certains PC ⇒
ralenti de la vitesse de transfert entre le média et l’ordinateur.
10. MTBF : temps moyen entre 2 pannes (à ne pas négliger lors de l’achat). Environ
200 000 heures.
capacité formatée (512 o/secteur)
Nombre de plateaux
Nombre de têtes
Temps d’accès moyen
Temps moyen d’attente
Temps d’accès piste à piste
Taux de transfert (Ultra 2 SCSI)
Taille buffer (cache)
Poids
Facteur de forme
Puissance alim.
Durée de vie garantie
18,2 Go
10
20
8,3 ms
4,17 ms
1,5 ms
200 Mo/s
4Mo
930 g
3,5”
15 W/12 V
5 ans
Le contrôleur disque ou bus est chargé de gérer les échanges de données et leur
encodage entre le disque et le système.
– ST506 (Seagate Technology), 1980 : pour des disques 5 Mo ! A évolué avec l’ajour
d’un tampon de recherche des info. Encodage MFM
– ESDI (Enhanced Small Device Interface),
– IDE (Integrated Drive Electronic), BUS-AT ou ATA (Advanced Technology Attachement), 1986
– EIDE (Enhanced IDE ou ATA-2 ou Fast-ATA-2)
– protocole PIO (Programmed Input/Output) monopolise le proceseur
– protocole DMA (Direct Memory Access) : transfert direct vert la mémoire centrale sans passer par le µp
– Ultra-ATA (Ultra-DMA) : vérification intégrité des données par des contrôle de
redondance cyclique
– SCSI (Small Computer System Interface) : le plus adopté par es constructeurs.
– Ultra-Wide SCSI : permet de piloter aussi disques optiques,. . . Peut fonctionner
sans faire intervenir la mémoire centrale. Technologie onéreuse.
Contrôleur
Seagate ST506
Seagate ESDI
IDE ou ATA
EIDE, ATA-2 ou Fast-ATA-2
Quantum Ultra-ATA ou UDMA
SCSI
Ultra Wide SCSI
DD amovibles (6= ZIP ).
Date
1980
1986
1997
1997
1998
Capacité disque (Mo)
5
137 Go
20-528
500
transfert (Mo/s)
5
24 (MBps)
8,3
4,17-16,67 (DMA)
33,3
4-40
80-200
Technologie RAID (Redundant Array od Inexpensive disks)
Le back-up traditionnel pour la sauvegarde des données est insuffisant dans le cas de serveur de
données sans arrêt sollicités
⇓
rôle de la technologie RAID qui emploie plusieurs disques (grappe) de capacité identique pour assurer
la répartition des données sur des média distincts.
– RAID-0 : pas de réelle sécurité car répartition sur plusieurs disques ⇒ si un DD tombe en
panne, assure plutôt l’accès rapide aux données.
Ecriture
Donnees
Donnees
Donnees
Donnees
Lecture
– RAID-1 : mirroring gestion par un contrôleur des 2 disques ou en duplexing où chque disque est
géré par son contrôleur.
– RAID-2 : stockage des codes de contrôles (ECC)
RAID 1
RAID 2
Ecriture
Donnees =
Ecriture
Donnees
Donnees
Lecture
Donnees
ECC
ECC
Lecture
Ecriture 1
Ecriture 2
Ecriture 3
Ecriture
Donnees
Donnees
Donnees
Donnees
bits de
Donnees
Donnees
Donnees
Donnees
bits de
bit 1
bit 5
bit2
bit 6
bit 3
bit 7
bit 4
bit 8
parite
parite
bit 1
bit 5
bit2
bit 6
bit 3
bit 7
bit 4
bit 8
parite
parite
RAID 4
Lecture
RAID 3
Le Disque Optique Numérique (DON)
Média récent (1970) en forte évolutivité : Lecture/écriture se font au moyen d’un faisceau laser ±
réfléchi ou diffusé selon
– l’état de la surface du média, permettant de coder ainsi différents états binaires.
– la "couleur" du laser (λ) → précision de l’ordre du µ
⇓
densité surfacique importante
couche
de protection
couche
sensible
couche
réfléchissante
COUPE D’UN CD
– 1982 : Philips et Sony propose une norme CD-audio ("Livre rouge")
– 1984-85 : mise au point du CD-ROM High Sierra, norme ISO 9660 ("Livre jaune", 1988) dans
laquelle données informatiques et audio cohabitent dans des zones distinctes
12 octets 4 octets entête 2336 octets de données
784 octets 98 octets
de synchro
CCE/CDE de contrôle
– 1986 : Philips crée le CD-I (CD -Interactif), "Livre vert" pour des applications multimédia
– 1988 : Philips, Sony, Microsoft s’associent ⇒ norme CD-ROM-XA (extend architecture),
extension de la norme ISO 9660 qui gère ensemble le son et les images
12 o. syn- 4 o. entête 8 o. entête 2048 octets 4 o CDE
276 o 784
o 98 octets
chro
de données
CCE CCE/CDE contrôle
– 1990 : Kodak met au point le CD-R (CD-Réinscriptible) ou CDROM Photo (norme "Livre
orange")
– 1993 : Video-CD de capacité 70 mn
– 1996 : Philips, Sony, Matsushita, Toshiba soutenu par Ibm,HP,3M proposent le standard
DVD (Digital Video Disk) sur un ∅ de 12 cm → stockage 25× plus grand que sur CD-ROM
classique
Principes techniques d’écriture et de lecture
Principe : Lecture/écriture se font au moyen d’un faisceau laser ± réfléchi ou diffusé selon l’état
de la surface du média, permettant de coder ainsi différents états binaires.
La distance tête de lecture optique et le média n’influe pas sur la qualité de la lecture/écriture ⇒
on évite les risques d’atterissages
Le DON se compose :
couche
de protection
couche
réfléchissante
couche
sensible
COUPE D’UN CD
⇓
L’information est prise en sandwich entre une face réfléchissante et 2 faces transparentes.
Techniques d’écriture/lecture
– l’ablation : par brûlage au moyen d’un graveur (lent 18 )ou pressage en usine
– Ecriture 19 : par fonte sous l’effet de la chaleur d’un faisceau émis par une diode laser d’un
alliage ⇒ création d’une cuvette repérant un état binaire.
– Lecture : réfléchissement en phase avec l’onde émise si le faisceau ne rencontre pas de cuvette
Exemple : Graveur Sony 2x/6x : "gravage" à la vitesse de x2 et lecture à 6x (x= 150Ko/s)
couche
de protection
couche
sensible
1
L’ablation
0
Cuvette obtenue
par ablation
couche sensible
couche de support
– la déformation
– Ecriture : formation d’une "bulle"
– Lecture : par mesure de variation des distances
Exemple : WORM 12” (ATG-Cygnet, VFD 1600 Philips, Sony WDD 531,. . . )
couche
de protection
couche
sensible
1
0
Bulle de gaz
couche sensible
couche de support
L’ablation
– l’amalgame
– Ecriture : par fonte de la couche métallique absorbant la lumière (découvrant une seconde
couche réfléchissante)
– Lecture : par réflexion ou non
couche
de protection
couche
sensible
1
0
L’ablation
Cuvette obtenue
par amalgame
couche sensible
couche de support
– la polarisation pour disques magnétooptiques : temps d’accès ≈ 35 à 90 ms, facteur de forme.
– Ecriture : application d’un champ magnétique à la zone à enregistrer de la surface d’un
disque métallique, magnétisé à l’origine. Le faisceau d’écriture (au point de Curie ≈ 150 0 C)
permet de modifier les propriétés magnétiques. En se refroissant la zone va conserver cette
aimantation.
– Lecture :polarisation différente de la lumière réfléchie (effet de Kerr)
– effacement : remagnétisation locale à chaud
couche
de protection
couche
sensible
Magnetisation reversible
Couche sensible magnetisable
L’ablation
0
1
Couche reflechissante
– la transition de phase :
– Ecriture : passage de l’état amorphe – absorbant de la lumière – à un état cristallin réfléchissant
la lumière
– Lecture : idem amalgame
couche
de protection
couche
sensible
LA TRANSITION DE PHASE
1
0
Etat cristallin
couche sensible
couche de support
Le cas des DVD (Digital Versatile Disk)
Technologie de faisceau laser dit "rayon bleu" de 653 mm de longueur d’ondes.
⇓
–
–
–
–
5
l’espace entre pistes passe de 0, 74µ à 1, 6µ
la taille des cuvettes de 0, 83µ à 0, 4µ ⇒ 3× plus de données pour ω identique !
débit entre 1,5 et 4,5 Mo/s
temps d’accès < 100ms
versions
Produit
Utilisation
Livre
Statut actuel
DVD vidéo
vidée compressé MPEG2
A
Normalisé
DVD ROM
Gravure stockage
B
Normalisé
DVD-R
Enregistrable une fois WORM
C
Normalisé
DVD Audio
Audio
D
Normes en cours
DVD RAM
réenregistrable
E
Normes en cours
Plusieurs déclinaisons du support selon
– le nombre de faces
– le nombre de couches utilisées
0,6 mu
0,6 mu
DVD MONOCOUCHES
Monoface−monocouche
DVD BICOUCHE
Biface−monocouche
Monoface−bicouche
Biface−bicouche
⇒ capacité de stockage de 4,7 à 17 Go !
Organisation
– DON mono/multisession
– chaque secteur (bloc) est de même longueur
– Les secteurs forment une spirale de 50 000 tours (idem disque vinyle) qui commence
près de l’axe de rotation
– technique d’encodage CLV avec → sensible à hautes vitesses aux légères vibrations
⇓
– solution CAV (Constant Angular Velocity) utilisée pour les DD ⇒ Exemple CDx42
max
– Existe aussi en version Full/Partial CAV
– tau xde transfert initial de 150Ko/s ⇒ 300Ko/s avec le CDx2 , 600Ko/s avec le
CDx4, . . .
Les DONs sont encore concurrencés par les DD resté très concurrentiels
Carte PCMCIA(Personnal Computer Memory Card Int. Asociation)
Rebatisé PC-Card (1989)
Sous le format d’une carte de crédit, autorisant l’ajout d’extension périphériques
génralement associés aux ordinateurs portables.
– dans la norme Pcmcia 3.0 (actuelle),
– tout système informatique peut reconnaître la carte grâce au code CIS (Card
Information Structure) fourni sur la carte
– indique format des données contenu sur la carte
– quelles resources pour fonctionner
– intègre des "sockets services" ⇔ assure liaison avec le BIOS pour gestion matériel
– intègre des "card services" ⇔ allocation dynamique ds ressources disponibles du
système
– Cardbus à 33 MHz en 32 bits, débit maximum de 132 Mo/s
– permet de stocker de 126 à 512 Mo de mémoire flash, SRAM ou EPROM ou
EEPROM
Types de cartes
– type I : utilisées essentiellement comme mémoire EPROM, mémoire Flash, adaptateur SCSI,. . .
– type II : peuvent recevoir mémoire flash ou des modems, fonctions réseau
– type III : intègrent DD de 1,8” pour des capacités de 340 Mo à 760 Mo
– carte dite combo : plusieurs types de composants dans une même carte
Bibliographie
– A.Tanenbaum Systèmes d’exploitation, systèmes centralisés, systèmes distribués,
Prentice-Hall & Intereditions ; 1994
– C.Carrez Les systèmes informatiques, Dunod Informatique 1990
– M.J.Bach Conception du système Unix, Masson Prentice-Hall 1985
– W.Stallings Operating Systems, Maxwell Macmillan Iint Editions 1992
– M.Griffith et M.Vayssade Architecture des système d’exploitation, Hermes, 1990
– S.Krakoviak Principes des systèmes d’exploitation des ordinateurs, Dunod 1985
Téléchargement