1/23 Architecture des systèmes informatiques Chapitre Idir AIT SADOUNE CentraleSupélec - Département Informatique 3, rue Joliot-Curie, 91192 Gif-sur-Yvette cedex <idir.aitsadoune@centralesupelec.fr> Année scolaire 2015-2016, Séquence 5
2/23 Outline
3/23 Outline
/23 Gestion Problème Pour des raisons de sécurité, chaque processus doit utiliser une zone (un espace d adresses) distincte Quel mécanisme d allocation de cet espace? Comment assurer la protection de cette zone? Comment assurer la transparence de la position de cet espace vis à vis d un programme?
4/23 Gestion Problème Pour des raisons de sécurité, chaque processus doit utiliser une zone (un espace d adresses) distincte Quel mécanisme d allocation de cet espace? Comment assurer la protection de cette zone? Comment assurer la transparence de la position de cet espace vis à vis d un programme? Utilisation de l espace d adresses Que contient l espace d un processus? Code (taille connue) Variables globales (taille connue) Pile (taille inconnue) Zone dynamique (taille inconnue)
5/23 Exemple de répartition
6/23 Outline
7/23 : réalisation
8/23 : fragmentation
/23 : bilan Avantages Simplicité matérielle Transparence pour les programmes Vérification de la validité des adresses
9/23 : bilan Avantages Simplicité matérielle Transparence pour les programmes Vérification de la validité des adresses Inconvénients Fragmentation Taille fixe des espaces
10/23 Outline
1/23 Système de : principe Mémoire (physique) divisée en blocs de petite taille alloués indépendamment aux processus
1/23 Système de : principe Mémoire (physique) divisée en blocs de petite taille alloués indépendamment aux processus Espace d adressage logique d un processus découpé en pages chaque page correspond à un bloc
11/23 Système de : principe Mémoire (physique) divisée en blocs de petite taille alloués indépendamment aux processus Espace d adressage logique d un processus découpé en pages chaque page correspond à un bloc Exemple : de 1 M mots blocs de 512 mots 2048 blocs
12/23 Système de : exemple
13/23 Système de : réalisation
4/23 Table des pages Gérée par la MMU (Memory Management Unit)
4/23 Table des pages Gérée par la MMU (Memory Management Unit) Stockée en
4/23 Table des pages Gérée par la MMU (Memory Management Unit) Stockée en 1 accès en... génère un second accès
14/23 Table des pages Gérée par la MMU (Memory Management Unit) Stockée en 1 accès en... génère un second accès du TLB (Translation Lookaside Buffer) cache conserve les derniers couples (num de page, num de bloc) utilisés
5/23 Système de : bilan Avantages Pas de fragmentation Il peut y avoir plus (ou moins) de blocs que de pages Un bloc peut être partagé par plusieurs processus (code, variables) Les pages (et les blocs) peuvent être protégés (lecture seule pour les pages contenant du code) Possibilité d agrandir un espace
15/23 Système de : bilan Avantages Pas de fragmentation Il peut y avoir plus (ou moins) de blocs que de pages Un bloc peut être partagé par plusieurs processus (code, variables) Les pages (et les blocs) peuvent être protégés (lecture seule pour les pages contenant du code) Possibilité d agrandir un espace Inconvénients Plus coûteux
16/23 Rappel : hiérarchie
17/23 Outline
8/23 Extension des mécanismes de
8/23 Extension des mécanismes de Espace des blocs utilisables plus grand que l espace physique
8/23 Extension des mécanismes de Espace des blocs utilisables plus grand que l espace physique Les blocs sont soit en centrale, soit en auxiliaire (disque dur)
8/23 Extension des mécanismes de Espace des blocs utilisables plus grand que l espace physique Les blocs sont soit en centrale, soit en auxiliaire (disque dur) Intégration dans la hiérarchie : la vive joue le rôle de «cache» pour l ensemble de tous les blocs utilisables, dont les moins utilisés sont sur le disque
19/23 : réalisation
0/23 Problème du remplacement Algorithmes : Random, FIFO, LRU (Least Recently Used), NRU (Not Recently Used). (déjà vus) Bit W pour savoir si une page a été modifiée
20/23 Problème du remplacement Algorithmes : Random, FIFO, LRU (Least Recently Used), NRU (Not Recently Used). (déjà vus) Bit W pour savoir si une page a été modifiée Entrée d une table des pages Numéro du bloc Bit de présence (P) Bit de modification (W) Bit(s) pour l algorithme de remplacement
1/23 Exemple : Intel IA-32 (x86) Adresses logiques sur 32 bits
1/23 Exemple : Intel IA-32 (x86) Adresses logiques sur 32 bits Configuration la plus fréquente : Pages/blocs de 4096 octets (12 bits de déplacement) 220 (1M) entrées dans la table des pages!
1/23 Exemple : Intel IA-32 (x86) Adresses logiques sur 32 bits Configuration la plus fréquente : Pages/blocs de 4096 octets (12 bits de déplacement) 220 (1M) entrées dans la table des pages! Solution : table des tables (page directory) de 1K entrées tables (page tables) de 1K entrées mémorisation des dernières translations : TLB (Translation Lookaside Buffer)
1/23 Exemple : Intel IA-32 (x86) Adresses logiques sur 32 bits Configuration la plus fréquente : Pages/blocs de 4096 octets (12 bits de déplacement) 220 (1M) entrées dans la table des pages! Solution : table des tables (page directory) de 1K entrées tables (page tables) de 1K entrées mémorisation des dernières translations : TLB (Translation Lookaside Buffer) Les adresses physiques sont également sur 32 bits Adresse d un bloc : sur 20 bits
21/23 Exemple : Intel IA-32 (x86) Adresses logiques sur 32 bits Configuration la plus fréquente : Pages/blocs de 4096 octets (12 bits de déplacement) 220 (1M) entrées dans la table des pages! Solution : table des tables (page directory) de 1K entrées tables (page tables) de 1K entrées mémorisation des dernières translations : TLB (Translation Lookaside Buffer) Les adresses physiques sont également sur 32 bits Adresse d un bloc : sur 20 bits Chaque super-table ou table occupe exactement 1 bloc (rappel : taille 4K) comporte 1K entrées 4 octets (32 bits) par entrée : 20 bits : adresse du bloc 12 bits restent pour P, W, droits d accès
22/23 Translation d adresse IA-32
23/23 Cas de x86-64 (AMD64 / Intel 64) Actuellement, adresses logiques sur 48 bits 4 niveaux de tables