Problématique La Pagination La segmentation. Gestion mémoire. Etienne Lozes. ENS Cachan

Documents pareils
Partie 7 : Gestion de la mémoire

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Structure fonctionnelle d un SGBD

SGM. Master S.T.S. mention informatique, première année. Isabelle Puaut. Septembre Université de Rennes I - IRISA

GESTION DE LA MEMOIRE

LA mémoire principale est le lieu où se trouvent les programmes et les

SYS MEM. Gestion de la mémoire. Table des matières. IUT - Département Informatique. ASR2-Système. 1.1 Motivation

Gestion de la mémoire

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Systemes d'exploitation des ordinateurs

Architecture des ordinateurs

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Concept de machine virtuelle

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués

Programmation C. Apprendre à développer des programmes simples dans le langage C

1. Systèmes d entrée/sortie 2. Systèmes de fichiers 3. Structure de mémoire de masse (disques)

A -Systèmes de fichiers 1 - FAT vs NTFS

REALISATION d'un. ORDONNANCEUR à ECHEANCES

<Insert Picture Here> Solaris pour la base de donnés Oracle

Croisière au cœur d un OS Étape 4 : Mise en place de la pagination

KoinKoin. Système d exploitation à architecture basée micro-noyau. Antoine Castaing Nicolas Clermont Damien Laniel

Mise en oeuvre TSM 6.1

PG208, Projet n 3 : Serveur HTTP évolué

Introduction aux SGBDR

LES SYSTÈMES DE FICHIERS

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Cahier n o 7. Mon ordinateur. Gestion et Entretien de l ordinateur

Chapitre 4 : Les mémoires

Initiation à la sécurité

PC Check & Tuning 2010 Optimisez et accélérez rapidement et simplement les performances de votre PC!

Réalisation d un OS 32 bits pour PC(x86)

COMPOSANTS DE L ARCHITECTURE D UN SGBD. Chapitre 1

Plan de la conférence. Virtualization. Définition. Historique. Technique. Abstraction matérielle

IV- Comment fonctionne un ordinateur?

Segmentation d'images à l'aide d'agents sociaux : applications GPU

environnements SQL Server?

MANUELS NUMÉRIQUES PROCÉDURE DE TÉLÉCHARGEMENT

Janvier Entretien de l ordinateur

NIMEGUE V3. Fiche technique 3.07 : Sauvegarde / Restauration manuelle

TD Architecture des ordinateurs. Jean-Luc Dekeyser

Exigences système Edition & Imprimeries de labeur

Assembleur. Faculté I&C, André Maurer, Claude Petitpierre

A5.2.3, Repérage des compléments de formation ou d'autoformation

Encryptions, compression et partitionnement des données

Unix/Linux I. 1 ere année DUT. Université marne la vallée

Exigences système Edition & Imprimeries de labeur

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

ESXi: Occupation RAM avec VM_Windows et VM_Linux. R. Babel, A. Ouadahi April 10, 2011

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12

Acronis True Image 10 Home Edition

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

Protéger ses données dans le cloud

LIVRE BLANC Pratiques recommandées pour l utilisation de Diskeeper sur les réseaux SAN (Storage Area Networks)

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski

Exigences système Commercial & Digital Printing

Gestion répartie de données - 1

Sauvegarde. de données. Nos conseils de prise en main

SYSTÈME DE GESTION DE FICHIERS

Comment installer un client Rivalis Devis factures

Introduction à la Programmation Parallèle: MPI

Recommandations techniques

Matériel & Logiciels (Hardware & Software)

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

Présentation du module Base de données spatio-temporelles

Système de Gestion de Fichiers

Microsoft Virtual Server, trucs et astuces avancés

Manuel de System Monitor

Boîte électronique. Découverte des principales fonctions d une messagerie électronique. (et les pièces jointes)

Architecture des ordinateurs Introduction à l informatique

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Windows XP niveau 2. D. Hourquin, Médiapôle St Ouen l'aumône

Bases de données documentaires et distribuées Cours NFE04

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Conventions d écriture et outils de mise au point

Utiliser Glary Utilities

GESTION DE L'ORDINATEUR

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Atelier C TIA Portal CTIA06 : programmation des automates S7-300 Blocs d organisation

Limitations of the Playstation 3 for High Performance Cluster Computing

ORDINATEUR DOSSIERS FICHIERS

Java - la plateforme

26 Centre de Sécurité et de

Installation et Administration de SolidWorks Electrical CadWare Systems

MANUEL UTILISATEUR SOPISAFE V 3.5

Protection des données avec les solutions de stockage NETGEAR

Fiche Pratique. Présentation du problème. Installation du logiciel. Etape 1. MAJ le 17/10/2011

Ladibug TM 2.0 Logiciel de présentation visuel d'image Manuel de l utilisateur - Français

Exigences système Commercial & Digital Printing

SINUTRAIN. SINUMERIK Logiciel de formation et de programmation sur PC. Aperçu Octobre Valable du 1/10/2008 au 30/9/2009

Windows 7, Configuration

UE Programmation Impérative Licence 2ème Année

Mode d emploi de la clef USB de l I.P.I. Philosophie de la clef USB

Votre Réseau est-il prêt?

CAHIER DES CHARGES D IMPLANTATION

Transcription:

ENS Cachan

Les mémoires Trois facteurs majeurs : la capacité le coût le temps d accès Quelques exemples de mémoires : les registres, le cache mémoire, la mémoire vive (RAM), clé USB, le cache disque, le disque dur.

Rôle du gestionaire mémoire Quand intervient-t-il? création d un processus activation/désactivation d un processus supression d un processus Que fait-il? partage la mémoire disponible entre les processus protection. cartographie la mémoire alloue/désalloue de la mémoire dynamiquement pour les besoin d un processus assure la cohérence de la mémoire optimise l utilisation de la mémoire

Mémoire étendue : le va-et-vient (ou SWAP) Principe : On dispose d un segment mémoire mobile, chargé en mémoire vive par le système quand il est nécessaire, remis sur disque sinon. Deux solutions : une copie de sûreté sur disque ou pas. Le problème des entrées-sortie : quand un processus emet une requête, il donne l adresse en mémoire physique où il souhaite recevoir le résultat. Deux solution : soit c est un tampon en mémoire système (inamovible), soit la mémoire d un processus en attente d E/S est déclarée inamovible. Question Pourquoi la solution avec copie de sûreté, bien qu offrant moins de mémoire étendue, peut-elle être plus efficace?

La mémoire vue par le processus... et en vrai Vue du processus un segment : En vrai PILE PILE 0..777 TAS CODE PARTITION SWAP TAS CODE 0..FF cache RAM 777...FFF FFF7...FFFF

Les premiers systèmes : la place du système en mémoire Monoprogrammation système en mémoire RAM ou dans le BIOS : OS en ROM Gestionnaires periph. en ROM Programme utilisateur OS en RAM Programme utilisateur Programme utilisateur OS en RAM

Les premiers systèmes : multiprogrammation à partitions fixes (MFT) Ordonnancement sur une ou plusieurs files Partitition 1 tâches en attente Partition 2 Partition 3 Partition 4 Partition 5 OS

Translation d adresse et protection Comment le processus va-t-il lire/écrire au bon endroit? A la charge du système : traduire toutes les adresses. Première approche (dépassée, cf. OS/MFT) : La translation est faite au chargement du programme. Deuxième approche Les registres base et limite : chaque adresse est recalculée par le microprocesseur. Question Comparer ces deux approches en terme d efficacité et de sûreté.

Partitions de tailles arbitraires Problème de la cartographie deux approches : table de bits ou liste de blocs blocs occupés 1 bloc (octet,mot, etc.) table de bit 101100111000 liste chaînée B F B F B B F Lien avec allocation mémoire pour un programme (malloc). Questions 1 Comparer ces deux approches. 2 Comment se fait la mise à jour de la liste des blocs?

La recherche d un segment libre Comment garer sa voiture en pensant aux autres? Deux (fausses) bonnes idées : best fit et worst fit. sur simulation, beaucoup de fragmentation interne Marche mieux : first fit, next fit. Avec plusieurs listes de blocs, selon leurs tailles : quick fit, on cherche dans la liste de taille adaptée à la demande.

La fragmentation et le GC La fragmentation : de nombreuses petites zones libres inexpoitables car non contigües. Défragmentation : opération délicate, il faut remettre à jour tous les liens. Le Garbage Collector : désalloue les cellules qui ne peuvent plus être utilisée Analyse d accessibilité. Algorithme mark and sweep. Stop and copy : le garbage collector defragmenteur : On recopie toutes les cellules utilisées en les plaçant de façon contiguë.

Remplacement de page Dans la pratique Que faire si un programme a besoin de plus de mémoire que celle disponible en mémoire vive? En pratique, un programme a besoin de certaines portions de la mémoire à certaines phases de son exécution. Les recouvrements (overlay) : solution aujourd hui dépassée, consistait pour le programmeur à définir les diverses phases du programme et les portions mémoires associées à chacune (cf. Turbo Pascal).

Mémoire virtuelle et pagination Remplacement de page Dans la pratique 60k-64k X 56k-60k X page virtuelle 52k-56k X 48k-52k 44k-48k 40k-44k 36k-40k 32k-36k 7 X 5 X X 32k-36k Table des pages : consultée par la Memory Management Unit (MMU) pour faire la traduction d adresse. 28k-32k 24k-28k 20k-24k 16k-20k X 3 4 X cadre de page 24k-28k 20k-24k 16k-20k Si page non chargée : défaut de page. Interruption de processus et déroutement système. 8k-16k 6 8k-16k 4k-8k 1 4k-8k 0k-4k 2 0k-4k MEMOIRE VIRTUELLE MEMOIRE VIVE

La table des pages en pratique Remplacement de page Dans la pratique La traduction d adresse. On lit les bits de poids fort de l adresse virtuelle (le numéro de page), et on le remplace par le numéro de cadre correspondant. Dimension de la table des pages NBPages = taille(memvirtuelle) taille(page) On veut taille(memvirtuelle) grande et taille(page) petite. Exemple : adressage 32 bits, taille(memvirtuelle)= 4Go, taille(page)= 4ko, on a 2 20 pages! Autre point : chaque processus a sa propre table des pages. Morale : La table des pages prend beaucoup de place en mémoire, et ne peut être stockée au niveau de la MMU.

Remplacement de page Dans la pratique Mémoire associative : Translation Lookaside Buffer En pratique, on réutilise souvent les mêmes pages pendant un certain temps utilisons un cache!. Le TLB est un petit cache de la table des pages, comportant en gros entre 8 et 64 entrées de la table des pages. A chaque instruction, la MMU parcours tout le TLB pour faire la conversion d adresse. En cas de défaut de TLB : soit c est le matériel qui met à jour si il connait l adresse de la table des pages, soit il alerte le système qui fait ce qu il faut

Contenu de la table des pages Remplacement de page Dans la pratique Un exemple d entrée dans la table des pages référencé protection numéro du cadre de pag cache inhibé modifié (dirty bit) présent/absent N.B : pas l adresse de la copie en swap (info réservée au système) Bit de cache : si résultat d E/S attendu doit y être sauvé, sinon inutile. Application de la pagination : pages partagées, copy on write pour le fork.

Autres cartographies Remplacement de page Dans la pratique But : réduire la taille de la table des pages table des pages multi-niveaux (une table de tables) table des pages inverses (une entrée par cadre de page) recherche + longue, mais on compte sur le TLB. Méthode utilisée pour les adressages 64 bits.

Remplacement de page Dans la pratique Et si on changeait la taille des pages? Comment évaluer la bonne taille p à prendre pour une page? Même si facilités matérielles, le système peut faire son propre choix. Le coût de la fragmentation interne En moyenne, la dernière page d un segment est remplie à moitié. On perd donc p 2 octets par segment. Le coût de la table des pages Si chaque processus utilise en moyenne un espace s, il utilise s p entrées dans la table des pages. Si e est la taille de chaque entrée, on a une perte de s p e Choix de l optimal On cherche donc à minimiser la perte p 2 + s p e. L optimum est p = 2se

Et les défauts de page? Remplacement de page Dans la pratique Comment choisir quelle page sera remplacée par celle demandée? Le remplacement de page optimal : c est celui qui ralentit le moins le système. Il y a plusieurs causes de ralentissement et donc plusieurs critères qui guident le choix. La page remplacée sera-t-elle utilisée à nouveau? Si oui, on aimerait que ce soit le plus tard possible. Mais comment savoir quelle page sera consultée le plus tard? La page remplacée doit-elle être recopiée sur disque? Si elle n a pas été modifiée, ce n est pas la peine. Problèmatique plus générale que la pagination : c est la même chose quand on gère n importe quel cache (cache disque, cache mémoire, cache web,etc).

Importance de la page remplacée Remplacement de page Dans la pratique Une intuition trompeuse : Avec davantage de mémoire vive, j aurais moins de défauts de page.

Importance de la page remplacée Remplacement de page Dans la pratique Une intuition trompeuse : Avec davantage de mémoire vive, j aurais moins de défauts de page. L anomalie de Belady pour le FIFO. Un processus utilise 5 pages virtuelles dans l ordre suivant : 0, 1, 2, 3, 0, 1, 4, 0, 1, 2, 3, 4 Exercice Comparer le nombre de défauts de pages avec 3 cadres de pages, puis avec 4, pour une politique de remplacement FIFO (c est la page la plus anciennement chargée qui est sélectionnée). Où est l erreur?

Importance de la page remplacée Remplacement de page Dans la pratique Une intuition trompeuse : Avec davantage de mémoire vive, j aurais moins de défauts de page. L anomalie de Belady pour le FIFO. Un processus utilise 5 pages virtuelles dans l ordre suivant : 0, 1, 2, 3, 0, 1, 4, 0, 1, 2, 3, 4 Exercice Comparer le nombre de défauts de pages avec 3 cadres de pages, puis avec 4, pour une politique de remplacement FIFO (c est la page la plus anciennement chargée qui est sélectionnée). Où est l erreur? Solution : 9 défauts de pages avec 3 cadres, 10 avec 4.

Importance de la page remplacée Remplacement de page Dans la pratique Une intuition trompeuse : Avec davantage de mémoire vive, j aurais moins de défauts de page. L anomalie de Belady pour le FIFO. Un processus utilise 5 pages virtuelles dans l ordre suivant : 0, 1, 2, 3, 0, 1, 4, 0, 1, 2, 3, 4 Exercice Comparer le nombre de défauts de pages avec 3 cadres de pages, puis avec 4, pour une politique de remplacement FIFO (c est la page la plus anciennement chargée qui est sélectionnée). Où est l erreur? Solution : 9 défauts de pages avec 3 cadres, 10 avec 4.

Remplacement de page Dans la pratique Algos Not Recently Used (NRU) et seconde chance Un heuristique très sensée : Ce qui a été utilisé récemment sera utilisé prochainement. Bits R et M d une page : R=1 si la page a été consultée depuis la dernière remise à 0. M=1 si la page a été modifiée depuis le chargement. Algo NRU : remise à 0 des R périodique, (R = 1, M = 1) sera choisi, sinon (R = 0, M = 1), sinon (R = 1, M = 0), et sinon (R = 0, M = 0). Algo de la seconde chance : Algo FIFO (cf Belady), mais avant de sortir une page, on teste R. Si c est 1, on remet à 0 et on remet en fond de file. Si aucune page avec R = 0, on applique FIFO.

Remplacement de page Dans la pratique Algorithme Least Recently Used (LRU) Un heuristique très sensée : Ce qui a été utilisé récemment sera utilisé prochainement. Algo LRU : On sort la page utilisée le moins récemment. Différentes implémentations : on maintient la date de dernière utilisation de chaque page, et on liste toutes les pages chargées quand il y a un défaut de page pour sélectionner la moins récente.

Remplacement de page Dans la pratique Algorithme Least Recently Used (LRU) Un heuristique très sensée : Ce qui a été utilisé récemment sera utilisé prochainement. Algo LRU : On sort la page utilisée le moins récemment. Différentes implémentations : on maintient la date de dernière utilisation de chaque page, et on liste toutes les pages chargées quand il y a un défaut de page pour sélectionner la moins récente.

Remplacement de page Dans la pratique Algorithme Least Recently Used (LRU) Un heuristique très sensée : Ce qui a été utilisé récemment sera utilisé prochainement. Algo LRU : On sort la page utilisée le moins récemment. Différentes implémentations : on maintient la date de dernière utilisation de chaque page, et on liste toutes les pages chargées quand il y a un défaut de page pour sélectionner la moins récente. LENT! on maintient le classement. Une astuce au niveau matériel. ancienneté = nbre noirs sur colonne page référencée 1 2 3 4 3 1

Remplacement de page Dans la pratique Algorithme Least Recently Used (LRU) Un heuristique très sensée : Ce qui a été utilisé récemment sera utilisé prochainement. Algo LRU : On sort la page utilisée le moins récemment. Différentes implémentations : on maintient la date de dernière utilisation de chaque page, et on liste toutes les pages chargées quand il y a un défaut de page pour sélectionner la moins récente. LENT! on maintient le classement. Une astuce au niveau matériel. COUTEUX! page référencée 1 2 3 4 3 1 ancienneté = nbre noirs sur colonne Approximation en adaptant NRU : les bits de vieillissement R contient n bits, R t+1 = 1 2 R t + 2 n δ used.

Remplacement de page Dans la pratique Algorithme Least Recently Used (LRU) Remarque : LRU ne souffre pas de l anomalie de Belady (algo dit de pile ). Algo LRU : On sort la page utilisée le moins récemment. Différentes implémentations : on maintient la date de dernière utilisation de chaque page, et on liste toutes les pages chargées quand il y a un défaut de page pour sélectionner la moins récente. LENT! on maintient le classement. Une astuce au niveau matériel. COUTEUX! page référencée 1 2 3 4 3 1 ancienneté = nbre noirs sur colonne Approximation en adaptant NRU : les bits de vieillissement R contient n bits, R t+1 = 1 2 R t + 2 n δ used.

Remplacement de page Dans la pratique Le remplacement de pages en pratique LRU idéal mais lourd à implémenter. une notion commode : l espace de travail (WS), ie les k dernières pages référencées. On maintient cette information, quand on commute un processus, on peut rétablir tout son espace de travail. Une bonne approximation de WS : les pages référencées dans les τ dernières (nano)secondes. Implémentation : WSClock L algo de la seconde chance avec prise en compte du temps de dernière utilisation bit de saleté temps de dernière utilisation M 6265 1 5968 0 M 5873 0 bit R M 6743 1 7368 1

Remplacement de page Dans la pratique L implémentation d encore plus près Le démon de pagination Copier des pages sales en tâche de fond. Pour le WSClock, on a deux aiguilles, une en tête pour le démon, une qui suit pour sélectionner la page à remplacer. Savoir quelle page fait défaut au début d un défaut de page Au mieux, le matériel stocke l adresse non traitée par la MMU dans un registre. Au pire, le système doit relire l instruction fautive et trouver tout seul... Reprendre l instruction après remplacement de page. Plus ou moins facile suivant le cpu. Problème avec certains cpus : le pc peut être incrémenté entre le début de lecture de l instruction et le défaut de page, les instructions peuvent être de longueurs variables, etc. move 6 2 1000 1002 1004 pc au moment du défaut de page comment savoir que 6 n est pas le code d une instruction?

Les choix du concepteur Remplacement de page Dans la pratique Quel algorithme de remplacement? Echelle du remplacement de page Local au processus ou global? si un processus fait un défaut de page, je remplace sa plus vieille page ou la plus vieille page de tous les processus? Demand paging ou préchargement? Le tout noyau ou l intelligence en espace utilisateur? un gestionnaire de défauts de page, calcule la page, dialogue avec la MMU, reprend l instruction un pager implémente l algo de remplacement de page. Pager en mode utilisateur? Efficacité vs clarté et sûreté du code...

L idée de segmentation Les limites du segment unique par processus pile thr1 pile thr2 tas code tas pile thr 2 pile thr 1 code un programme multithread en vrai... segment 1 segment 2 segment 3 segment 4... et comment on voudrait l'avoir! plus généralement, intéresse tout programme qui a plusieurs zones dynamiques à gérer. La mémoire segmentée : adresse = numéro de segment + décalage

La mémoire segmentée La mémoire segmentée : adresse = numéro de segment + décalage code Proc 1 libre systeme librairie partagée Les gains Facilité de compilation (édition de liens). Facilité de partage mémoire. Facilité de protection. tas proc 2 pile proc 1 libre code proc 3 Les défauts La fragmentation externe. Ralentissement?

Segmentation avec pagination : le Pentium 12k 0 12k 0 8 k 0 12k P1 28k 28k segments globaux (GDT) 0 8 k 0 12k 20k segments locaux (LDT) Mémoire virtuelle paginée 0 0 20k 0 P2 P3 0 LDT ou GDT 0 20k 0 8k 0 12k Mémoire virtuelle linéaire de P2 0 table des pages Mémoire physique 16K segments / proc, chaque segment contenant jusqu à 1Go de mots de 32 bits. segments typés (code ou données) mécanismes de protectiont

Exemple : conversion d adresse pour du code Exemple : P2 fait un call 172. 1 on consulte le registre CS (code segment, DS pour les données) : contient le sélecteur de segment courant pour les données. Sélecteur de segment Index 13 bits 1 2 G / L DPL

Exemple : conversion d adresse pour du code Exemple : P2 fait un call 172. 1 on consulte le registre CS (code segment, DS pour les données) : contient le sélecteur de segment courant pour les données 2 si bit G/L à 1, le segment est global, on consulte la table des segments globaux, sinon la table propre à P2. descripteur de segment (64 bits) :. Sélecteur de segment Index Descripteur de segment 13 bits 1 2 G / L DPL limite base 24-31 G P DPL S type base 16-23 16-19 base 0-15 limite 0-15 32 bits

Exemple : conversion d adresse pour du code Exemple : P2 fait un call 172. 3 on interprète limite (20 bits) en fonction de la granularité (G=0,octets,G=1, pages),. Sélecteur de segment Index Descripteur de segment 13 bits 1 2 G / L DPL limite base 24-31 G P DPL S type base 16-23 16-19 base 0-15 limite 0-15 32 bits

Exemple : conversion d adresse pour du code Exemple : P2 fait un call 172. 3 on interprète limite (20 bits) en fonction de la granularité (G=0,octets,G=1, pages), 4 on vérifie 172<base-limite, le niveau de privilège (DPL), le type, la présence (P). Sélecteur de segment Index Descripteur de segment 13 bits 1 2 G / L DPL limite base 24-31 G P DPL S type base 16-23 16-19 base 0-15 limite 0-15 32 bits

Exemple : conversion d adresse pour du code Exemple : P2 fait un call 172. 3 on interprète limite (20 bits) en fonction de la granularité (G=0,octets,G=1, pages), 4 on vérifie 172<base-limite, le niveau de privilège (DPL), le type, la présence (P) Niveaux de privilèges ou anneaux de protection. 0 = noyau 1= appels systèmes 2=bibliothèques partagées 3=programmes utilisateurs Porte d appel si on appelle du code un niveau inférieur, déplacement doit être 0 ; pour les données, on doit rester à son niveau (ou au-dessus).

Exemple : conversion d adresse pour du code Exemple : P2 fait un call 172. 6 si la pagination n est pas activée (bit de contrôle global), on a une adresse physique 32 bits, si elle est activée, on passe aux tables des pages (vu l espace virtuel, 2 niveaux de page) Niveaux de privilèges ou anneaux de protection. 0 = noyau 1= appels systèmes 2=bibliothèques partagées 3=programmes utilisateurs Porte d appel si on appelle du code un niveau inférieur, déplacement doit être 0 ; pour les données, on doit rester à son niveau (ou au-dessus).

Pentium : sur le papier et en pratique Pourquoi on est content exploit d être compatible 80/86 plein de possibilités : segmentation pure, pagination pure, segmentation avec pagination mécanisme de portes d appel sensé La mauvaise nouvelle Aucun système n utilise la segmentation! Il n y a pas de vérification de non recouvrement des segments Chutes de performances si segmentation activée autres raisons?...