cours architecture des syst mes informatiques
Download
Skip this Video
Download Presentation
Cours Architecture des Systèmes Informatiques

Loading in 2 Seconds...

play fullscreen
1 / 48

Cours Architecture des Systèmes Informatiques - PowerPoint PPT Presentation


  • 108 Views
  • Uploaded on

Cours Architecture des Systèmes Informatiques. Plan: mémoire et périphériques. Aspects généraux, caractéristiques & besoins La mémoire des ordinateurs : vue matérielle Gestion de la mémoire, vision OS Périphériques Disque : bas niveau Disque : haut niveau.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Cours Architecture des Systèmes Informatiques' - ward


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
plan m moire et p riph riques
Plan: mémoire et périphériques
  • Aspects généraux, caractéristiques & besoins
  • La mémoire des ordinateurs : vue matérielle
  • Gestion de la mémoire, vision OS
  • Périphériques
  • Disque : bas niveau
  • Disque : haut niveau
aspects de l utilisation de la m moire
Aspects de l’utilisation de la mémoire
  • On n’a pas besoin de toute la mémoire en même temps
    • Code du programme : la partie en cours d’exécution
    • Les données : utilisation souvent localisée
      • dans le temps et l’espace : variables locales
      • dans le temps : allocation/libération dynamique
      • utilisation par à-coups, sur des intervalles de temps courts
  • Utilisation irrégulière des ressources
    • Loi des 90-10
      • 10% des données représentent 90% des accès
      • (10% du code utilise 90% de la CPU)
localit des r f rences
“Localité des références”
  • Concept de “localité des références”
    • Sur un court laps de temps, le nombre “d’objets” utilisés est petit
      • WS, Working Set [Peter Denning, 1968]
  • Programme
    • Les instructions sont le plus souvent exécutées en séquences
    • Les boucles tendent à faire répéter de courtes séquences
  • Données
    • Variables locales, tables constituent des regroupements naturels
  • Mais… Évolution au fil des temps du WS
    • Comment gérer cette évolution ?
m moire les performances
Mémoire : les performances
  • L’informatique a toujours besoin de mémoire plus rapide
    • La mémoire traditionnelle est lente comparée au processeur
    • La mémoire rapide est très chère
    • Et il en faut beaucoup…
  • Mais… “localité des références”
    • Optimiser l’utilisation de la mémoire ?
  • Notion de hiérarchie mémoire
    • Solution au dilemme coût / performances
hi rarchie de m moire

Registres : 0 ns

Hiérarchie de mémoire

Cache 10ns

RAM : 50ns

Coût et Vitesse

Disque magnétique 10ms

Disque magnéto-optique 500ms

Bande magnétique minutes

gestion de cette hi rarchie
Gestion de cette hiérarchie
  • En grande partie automatique
    • Le compilateur décide, par une analyse statique du programme, quelles données vont être temporairement conservées dans des registres, et génère les instructions de transfert
    • La CPU détermine dynamiquement, au cours de l’exécution, quelles données de la mémoire centrale vont être placées dans le cache
    • Le système d’exploitation décide de transférer entre la mémoire centrale et le disque des portions de programmes ou de données
cache
Cache
  • Un élément critique de la hiérarchie mémoire
    • Taille réduite, comparée à celle de la mémoire centrale
    • Vitesse d’accès proche de celle du processeur, coût élevé
    • Contient des copies de parties de la mémoire centrale
  • Principe de fonctionnement
    • Un accès à la MC entraîne le transfert d’un bloc vers le cache (principe de localité)
    • Les éléments du bloc sont accessibles de manière performante
    • Du fait de la rapidité nécessaire, la gestion du cache est entièrement réalisée en matériel (invisible à l’OS ou aux applications)
aspects de la gestion du cache
Aspects de la gestion du cache
  • D’où viennent les données ?
    • Associer à chaque bloc du cache son adresse MC
  • Politique de transfert des blocs
    • Taille des blocs
    • Quel bloc “évacuer” pour en placer un nouveau ?
    • A quel moment réécrire en mémoire les données modifiées ?
  • Taille et technologie du cache
    • Petit, rapide et cher, ou grand, meilleur marché, et plus lent ?
    • Un/deux caches dans la hiérarchie ?
    • Séparer instructions et données ?
algorithme de gestion du cache
Algorithme de gestion du cache
  • Mappage direct
    • Le mot d’adresse xxxxYxxx se retrouve dans le bloc Y du cache
    • Simple, rapide, efficace à mettre en œuvre
    • Très inefficace quand deux blocs de MC se mappent au même endroit
      • lourde pénalité en temps d’exécution
  • Mappage associatif
    • On utilise une mémoire associative, une entrée par bloc de cache
    • A chaque bloc est associée sa position en mémoire
    • Recherche d’un bloc à travers la mémoire associative
    • Algorithmes de remplacement
note m moire associative
Note : mémoire associative
  • Accès par contenu
    • On recherche une valeur dans la mémoire
    • La mémoire fournit l’adresse où se trouve la valeur
    • La recherche s’effectue simultanément sur tous les éléments de la mémoire
  • Dispositif matériel de coût élevé, conçu spécifiquement pour chaque application
    • Plus complexe
    • Pas d’utilisation en grande quantité
algorithmes de remplacement
Algorithmes de remplacement
  • Cas du seul mappage associatif
    • Moins récemment utilisé (LRU, least recently used)
    • File (FIFO, first in, first out)
    • Moins fréquemment utilisé (LFU, least frequently used)
    • Aléatoire (Random)
  • Réécriture des blocs modifiés
    • Écriture immédiate (Write through)
      • Conformité cache/MC, écritures multiples coûteuses
    • Écriture différée (Write back)
      • Incohérence possible cache/MC [ex: DMA disque]
autres aspect de la gestion des caches
Autres aspect de la gestion des caches
  • Tailles relatives blocs, cache, MC
    • Bloc : 4 à 8 “unités d’accès” de la CPU
    • Cache : 1/1000 de la taille MC
  • Localisation du cache
    • Sur la CPU (L1, level one)
      • 80486 : 8 ko
      • Pentium : 16 ko
      • Power PC [Motorola] : 64 ko
    • Cache de second niveau (L2, level two)
      • Carte mère, à côté du processeur : 512 à 1024 ko
les unit s de gestion de la m moire
Les unités de gestion de la mémoire
  • …Ou MMU, Memory Management Units
  • Résoudre un problème récurrent : les trous de mémoire
    • Comment rassembler de l’espace libre ?
    • Comment déplacer des blocs de mémoire utilisée
    • Comment mettre à jour des adresses dans un programme ?
  • Intermédiaire entre adresses logique et physique
    • Adresse logique : ce que voit et manipule le programme
    • Adresse physique : où est réellement conservée la donnée
que va offrir une mmu
Que va offrir une MMU ?
  • Outil matériel pour mieux gérer la mémoire physique d’une machine
    • Simplifier la gestion d’un ensemble de programmes
    • Simplifier la gestion de la mémoire au sein d’un programme
    • Offrir une protection entre programmes, et au sein d’un programme
    • Permettre un partage physique et logique de mémoire entre plusieurs programmes
    • Simuler une mémoire physique “plus grande”
segmentation
Segmentation
  • L’espace d’adressage logique d’un programme est partagé en segments contigus
    • Transparent au programme
    • Les segments sont de tailles différentes [multiples de 2k octets]
    • Informations nécessaires pour chaque segment
      • adresse “logique” de début du segment
      • adresse physique effective du segment
      • taille du segment
      • informations diverses : n° programme, R/W, modifié, etc…
        • c.f. poly : le Z8010, pp 58-59
pagination
Pagination

Adresse logique

Numéro de page

Déplacement

  • Une segmentation où tous les segments ont même longueur - le dispositif le plus fréquent.
  • Taille typique : 4 à 8 ko.

Traduction

Adresse physique

m moire virtuelle
Mémoire virtuelle
  • Espace logique plus grand que l’espace physique
    • Pour l’ensemble des programmes
    • Au sein de chaque programme
  • L’espace logique est mappé sur un espace physique en mémoire secondaire : le “swap”, portion de disque
  • Les pages sont transférées entre la mémoire physique et le disque
    • Géré par le système d’exploitation
    • “Faute de page”
probl mes
Problèmes
  • Taille de la table des pages
    • 4 Go adressables, pages de 4 ko => 1M d’entrées…
    • Coût de cette table…
      • table associative : numéro logique/numéro physique
      • matériel : équivalent de 8 Mo de mémoire => énorme
      • solution mixte : hard+soft
        • tables à deux niveaux, table pour chaque programme
        • cache rapide dans la CPU : TLB, Translation Lookaside Buffer
          • 890486 ; 32 entrées, 98% de réussite
  • Algorithmes de gestion
    • Complexes : LRU, FIFO, Not Recently Used
  • Phénomène de thrashing : compétition pour la MC
la m moire sous dos

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

ROM BIOS

libre

libre

ROM BIOS 2

RAM vidéo

RAM vidéo 2

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

RAM

La mémoire sous DOS
  • Vision DOS traditionnelle
    • 1 Mo divisée en 16 segments de 64 ko
    • 10 segments de mémoire RAM
      • 0 à 640 ko
    • 1 segment ROM pour le BIOS
    • 1 segment RAM vidéo (VRAM)
    • segments “libres”
      • compléments BIOS ou VRAM
      • cartouches enfichables
types de m moire
“Types” de mémoire
  • Mémoire conventionnelle : 640 premiers ko
  • Mémoire haute : de 640 à 1024 ko
  • Mémoire étendue : au delà de 1024 ko
    • Extended Memory : de 16 Mo (80286) à 4Go (80386)
  • Expansions mémoire
    • Expanded memory ; commutation de bancs
    • “Norme” LIM/EMS : Lotus/Intel/Microsoft EM Specification
      • version 3.2 et 4.0
utilisation de la m moire sous dos
Utilisation de la mémoire sous DOS
  • Vision utilisateur : allocation & libération
      • Allocation par la primitive 48h ; bx = taille demandée [16 octets]
      • Libération par la primitive 49h ; es:0 = adresse du bloc à libérer
        • Les blocs libres contigus sont rassemblés pour former un bloc plus gros
    • “Paramétrer” la gestion de la mémoire
      • Fonction 58h : choisir first/best/last fit, high/low
        • first fit : le premier bloc trouvé de taille suffisante est alloué
        • best fit : le bloc de la taille minimale est alloué
        • last fit : comme first fit, en partant de la fin de la liste
        • high/low : dans quelle mémoire allouer
types d adressage
Types d’adressage
  • E/S “traditionnelles”
    • Mémoire d’échange distincte de la mémoire centrale
    • Instructions spéciales pour la réalisation des E/S
    • Mécanisme de transfert avec la MC
  • E/S “mappées”
    • Mémoire d’échange et mots de commande sont visibles dans l’espace d’adressage du processeur
    • Les opérations d’E/S se traduisent par des lectures et écritures en MC
    • “Perte” d’une portion de la MC
interface programm e
Interface programmée
  • La CPU réalise la plus grosse partie du travail
    • Lancement d’une commande
      • paramètres spécifiques, données éventuelles
    • Attente d’un changement d’état
    • Lecture de l’état (“status”) du périphérique
    • Récupération des données, ou gestion de l’erreur
    • Poursuite par la CPU du programme courant
  • Caractéristiques
    • Simple [logiciel, matériel], synchrone, inefficace
e s g r es par interruptions
E/S gérées par interruptions
  • Lancement synchrone des opérations
    • La CPU s’adresse au module d’E/S pour initialiser l’opération
    • Pendant l’E/S, la CPU peut continuer les traitements en cours
    • Le module d’E/S assure la gestion des opérations
    • Quand l’E/S est achevée, il le signale à la CPU en provoquant une interruption
  • La CPU reconnaît l’interruption, et la traite à la fin de l’instruction en cours
    • Récupération des données
e s en acc s direct m moire
E/S en accès direct mémoire
  • Décharger “encore plus” la CPU
  • Lancement synchrone des opérations
    • Appel au module E/S
      • spécification de l’opération et des paramètres
      • spécification d’une adresse mémoire et d’un nombre d’éléments
    • La CPU travaille pendant les opérations d’E/S
    • L’interruption indique la fin du transfert et la disponibilité des données
  • Le module d’E/S utilise le bus pour lire/écrire en MC
    • DMA : direct memory access
interfaces externes
Interfaces externes
  • Ports E/S série et parallèle
    • Imprimantes, modems
  • BUS E/S à grande vitesse
    • SCSI, ESDI, IDE…
      • Disques,lecteurs CD-Rom, scanners
    • Ethernet
      • Réseau
    • Bus série P1394
    • Bus d’instrumentation : HP-IB, IEEE-488, etc.
ports d e s lents
Ports d’E/S “lents”
  • Port série
    • Norme RS-232
      • 1 fil émission, 1 fil réception, 1 masse, 1 terre, 5 fils contrôle
    • Norme RS-422 (proche RS-232)
    • Norme MIDI [Musical Instrument Digital Interface]
      • 1 fil émission, 1 fil réception, 1 masse
    • Interfaces “propriétaires” [souris, clavier]
  • Port parallèle
    • Interface “Centronics”
      • 8 fils données, 1 masse, 1 signal “busy”, 1 signal “strobe]
norme rs 232c v 24

1 : Terre de protection

2 : Transmission

3 : Réception

4 : Demande pour émettre

5 : Prêt à émettre

6 : Poste de données prêt

7 : Masse

8 : Détection de porteuse

20 : Terminal de données prêt

Norme RS-232C / V.24
  • Spécifications mécaniques, électriques, fonctionnelles
    • V.24 du CCITT [Comité Consultatif International Télégraphique & Téléphonique] = RS-232C de EIA [Electronic Industries Association]
    • Circuit UART : Universal Asynchronous Receiver Transmitter
    • Octets indépendants
    • Sérialisation
    • 7/8 bits données
    • bits start, stop
    • 25 broches
    • Débit : 110, 300,1200… bauds
repr sentation des signaux

0 1 0 0 1 0 1 1 0

Représentation des signaux
  • Modulation numérique
  • Modulation en amplitude
  • Modulation en fréquence
  • Modulation en phase
bus scsi small computer system interface
Bus SCSI - Small Computer System Interface
  • SCSI-1 [Apple, 1984]
    • 8 bits de données
    • Horloge à 5 MHz ; 5 MB/seconde
    • 8 “éléments” dont la CPU => 7 périphériques
  • SCSI-2
    • Standard actuel
    • Largeur du bus de 16 ou 32 bits
    • Horloge à 10 MHz
    • Grande variété de périphériques
ethernet
Ethernet
  • Bus à 10 ou 100 Mb/s, pour réseau local
    • Câble coaxial ou paire torsadée
    • Équipements dotés d’un numéro unique sur 48 bits
    • Message : paquet de 128 à 1530 octets [0.1 à 1.5 ms]
    • 1024 stations [transducteur], 300 à 1000 m
    • Pas de contrôle central : les stations écoutent et réémettent si nécessaire
      • collisions détectées par l’émetteur
      • réémission au bout d’un temps aléatoire
    • Interconnexions :
      • réémetteurs, filtres ou passerelles
ethernet technologie

R

R

Transceiver

Station

Ethernet - technologie
  • Aspect électrique
      • propagation des ondes électro-magnétiques = 200,000 km/s
      • phénomènes d’écho aux extrémités
  • Connexion des stations
ethernet collisions

T1

T5

T6

T7

S1

T2

T3

T4

T8

S2

Ethernet - collisions

T1, T2 : les stations S1 et S2 envoient un message

T3 : S2 détecte une collision due à l’émission de S1, arrête d’émettre en T4

T5 : S1 détecte la collision due à l’émission de S2, arrête d’émettre en T6

T7, T8 : le médium apparaît “libre” aux stations S1 et S2

p1394 bus s rie haute performance
P1394 - Bus série haute performance
  • Liaison série haute vitesse, faible coût
  • Ordinateurs, Électronique générale
  • 25 à 400 Mbps [3 à 50 MB]
  • Jusqu’à 63 unités physiques
  • Avec des “bridges”, jusqu’à 1022 bus interconnectés
  • Communication par 3 niveaux de protocoles:
    • Physique, liaison, transaction
disques magn tiques
Disques magnétiques
  • Aspects technologiques
    • Support magnétique tournant sous une tête de lecture
    • Disquette : 3.5 pouces, capacité 800ko, 1.2, 1.44 ou 2.88 Mo, 2 faces
    • Disque dur : de 80 Mo à 10 Go, 3.5, 5 ou 8 pouces.
      • 1 tête par face magnétisée, 1 ou + plateaux
      • la tête se déplace le long d’un rayon
      • la rotation du disque sous la tête détermine une piste
      • 1 face = ensemble de pistes concentriques
      • cylindre : ensemble de pistes setrouvant simultanément sous les têtes
pistes et secteurs

En-tête et numéro de secteur

Partie utile

Checksum

Pistes et secteurs
  • Piste : partagée en plusieurs secteurs
    • Disquette DD : 80 pistes/face, 9 secteurs de 512 octets/piste = 720 ko
  • Secteur : “unité de lecture”, 256 à 4096 octets utiles
    • vue “déroulée” d’une piste : secteurs et “gaps”
    • numérotation logique des secteurs  ordre physique : “entrelacement”
      • ex : 0 4 1 5 2 6 3 7
le travail du contr leur disque
Le travail du contrôleur disque
  • Réaliser les opérations d’entrées-sorties
    • Lectures/écriture de “secteurs”
  • Gérer des numéros de secteurs “logiques”, 0 à n-1
    • pistes, têtes et secteurs physiques
    • gestion des secteurs défectueux
      • réalisé au “formatage” du disque
        • remplacer les secteurs défectueux par des secteurs “de réserve”
      • implique une “zone critique” du disque
        • le disque est inutilisable si la zone critique est défectueuse
disque op rations de haut niveau
Disque : opérations de “haut niveau”
  • Fichier
    • Suite séquentielle d’octets désignée par un nom
    • Accès séquentiel, direct, indexé, etc…
    • Caractéristiques : taille, date création/modification, droits…
  • Gérer un ensemble de fichiers : “file system”
    • Organisation “à plat” [Macintosh HSFS version 1]
    • Organisation hiérarchiques [Dossiers imbriqués : DOS, UNIX]
  • Opérations :
    • Créer, déplacer, renommer, détruire des fichiers, modifier leurs attributs
    • Lire, écrire…
un exemple dos 3 3
Un exemple : DOS 3.3
  • Numérotation des secteurs sur 16 bits
      • [32 bits en DOS 4.0]
    • Taille max : 65536 * 512 octets, soit 32 Mo.
    • Pas un problème pour les disquettes
    • Les disques dur peuvent être divisés en “partitions” de 32 Mo.
  • Organisation d’une partition :
    • Secteurs “réservés”, tables d’allocation, répertoire racine
    • Données
    • Secteur “cachés”
table d allocation des fichiers fat
Table d’allocation des fichiers [FAT]
  • 1 ou plusieurs exemplaires, secteurs 1 à n
  • Entrées de 12 (avant DOS 3.0) ou 16 bits
  • Chaque entrée est associée à un cluster
  • Un cluster est l’unité d’allocation
    • 1 ou 2 secteurs pour un floppy, 4 à 64 pour un disque dur
  • Valeurs possibles des entrées :
    • 0000h : cluster libre ; 0001h : entrée invalide
    • 0002h à FFEFh : cluster utilisé, pointeur vers cluster suivant du fichier
    • FFF0h à FFF6h : “réservé”
    • FFF7h : le cluster contient un secteur endommagé
    • FFF8h à FFFFh : le cluster est le dernier du fichier
racine donn es et secteurs cach s
Racine, données et secteurs cachés
  • Racine : un répertoire (taille indiquée dans sect. 0)
    • Entrée de 32 octets : “nom” du disque
    • Entrées de 32 octets
  • Données : taille calculable
    • Taille totale, moins S0, racine, FATs et Secteurs cachés
  • Secteurs cachés
    • Secteurs non inclus dans la zone données pour des raisons de formatage, limitations, etc
    • Peuvent indiquer la présence de partitions supplémentaires
r pertoire

Octets Contenu

0-7 Nom du fichier / 8 car. nom du disque

8-10 Extension / 3 car. nom du disque

11 Attributs

12-21 Inutilisés

22-23 Heure création

24-25 Date création

26-27 Numéro du premier cluster

28-31 Nombre d’octets / 0 (répertoire/volume)

bit 0 : Read-only bit 3 : décrit un volume

bit 1 : fichier caché bit 4 : décrit un répertoire

bit 2 : fichier système bit 5 : modifié depuis back-up

Répertoire
  • Structure
  • Attributs : 1 si…
heure et date premier octet

bits 15-11 : heure (0-23)

bits 10-5 : minute (0-59)

bits 4-0 : seconde/2 (0-29)

bits 15-9 : années depuis 1980 (0-127)

bits 8-5 : mois (1:janvier, 12:décembre)

bits 4-0 : jour (1 à 31)

Heure et Date, premier octet
  • Heure
  • Date
  • Premier octet : valeurs spéciales

E5h : entrée correspondant à un fichier effacé

00h : entrée libre (plus d’entrée utilisée ensuite)

types de fichiers conventions
Types de fichiers : conventions
  • DOS (suffixe unique, 3 car. max)
    • .c .h : fichiers source C
    • .COM .EXE : fichiers de commande, exécutable
  • Unix, Mac : un ou + suffixes
    • .shar .tar shell archive, tape archive
    • .Z .gz .zip fichier comprimé par compress, gzip ou pkzip
    • .uu .hqx fichier encodé par uuencode ou binhex
      • ex : toto.tar.gz.hqx
    • .gif .jpeg .jpg .tiff .xmb : fichiers image
    • .ps .tex .dvi .man : postscript, TeX, DVI, man
fichiers op rations du dos
Fichiers : opérations du DOS
  • Création de fichier
  • Ouverture de fichier
  • Fermeture de fichier
    • Note : fermer les fichiers dès que possible
      • Les fichiers ouverts peuvent être endommagés en cas de coupure de courant, reset machine, etc.
  • Lecture, écriture, positionnement dans un fichier
  • Recherche d\'un fichier conforme à un schéma
  • Destruction, renommage d\'un fichier
fichiers autres op rations du dos
Fichiers : autres opérations du DOS
  • Lire/changer les attributs
  • Lire/modifier date et heure de modification
  • Création de fichier temporaire
  • Duplication d’un file handle
  • Gestion des répertoires
    • Création, destruction, déplacement
    • Choix du répertoire par défaut
ad