• Aucun résultat trouvé

Mémoire virtuelle

N/A
N/A
Protected

Academic year: 2022

Partager "Mémoire virtuelle"

Copied!
158
0
0

Texte intégral

(1)Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion. Systèmes d’Exploitation Cours 5/10 : Mémoire Nicolas Sabouret Université Paris-Sud Licence 3 - semestre S5. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 1/38.

(2) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion. Plan. 1. Fonctionnement de la mémoire. 2. Pagination. 3. Mémoire virtuelle. 4. Conclusion. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 2/38.

(3) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Plan. 1. Fonctionnement de la mémoire Principe général Un peu de calcul. . . Liaison d’adresse. 2. Pagination. 3. Mémoire virtuelle. 4. Conclusion. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 3/38.

(4) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(5) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC. fetch. RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(6) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC. fetch. RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(7) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur opcode. bus. PC. UC. fetch. RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(8) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(9) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC. adressage (lecture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(10) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC. adressage (lecture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(11) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur adresse. bus. PC. UC. adressage (lecture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(12) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur adresse. bus. PC. UC. adressage (lecture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(13) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC. adressage (lecture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(14) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur donnée. bus. PC. UC. adressage (lecture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(15) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(16) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC. adressage (écriture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(17) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC. adressage (écriture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(18) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur adresse. bus. PC. UC. adressage (écriture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(19) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur adresse. bus. PC. UC. adressage (écriture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(20) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur bus PC. UC. adressage (écriture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(21) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Rôle de la mémoire Espace de stockage Ensemble ordonné de cases indexée par leur adresse et contenant : Des instructions → registre PC sur le processeur Des données → registre RADM sur le processeur donnée. bus. PC. UC. adressage (écriture). RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 4/38.

(22) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Structure de la mémoire Adressage Chaque case mémoire est associée à une adresse (le numéro de la case) Cette adresse est obtenue depuis l’instruction en binaire → L’adresse est sur n bits. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 5/38.

(23) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Structure de la mémoire Adressage Chaque case mémoire est associée à une adresse (le numéro de la case) Cette adresse est obtenue depuis l’instruction en binaire → L’adresse est sur n bits Il y a donc 2n différentes adresses possibles (de 00 . . . 0 à 11 . . . 1) → La mémoire contient 2n cases. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 5/38.

(24) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Structure de la mémoire Adressage Chaque case mémoire est associée à une adresse (le numéro de la case) Cette adresse est obtenue depuis l’instruction en binaire → L’adresse est sur n bits Il y a donc 2n différentes adresses possibles (de 00 . . . 0 à 11 . . . 1) → La mémoire contient 2n cases Exemple : 32 bits → 232 = 4 Go. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 5/38.

(25) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Un peu de calcul. . . En informatique, on travaille avec des puissance de 2 → Il faut les connaı̂tre !. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 6/38.

(26) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Un peu de calcul. . . En informatique, on travaille avec des puissance de 2 → Il faut les connaı̂tre !. Table des puissances de 2 x. 2x. Info32b. 0 0. 1 2. 2 4. 3 8. 4 16. Systèmes d’Exploitation. 5 32. 6 64. 7 128. 8 256. 9 512. Nicolas Sabouret. 10 1024. 6/38.

(27) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Un peu de calcul. . . En informatique, on travaille avec des puissance de 2 → Il faut les connaı̂tre !. Table des puissances de 2 x. 2x. 0 0. 1 2. 2 4. 3 8. 4 16. 5 32. 6 64. 7 128. 8 256. 9 512. 10 1024. Exemple 1 case mémoire = 1 octet de données (8 bits) (c’est généralement le cas). Ü 8 bits → 28 octets = 256o de RAM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 6/38.

(28) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Un peu de calcul. . . En informatique, on travaille avec des puissance de 2 → Il faut les connaı̂tre !. Table des puissances de 2 x. 2x. 0 0. 1 2. 2 4. 3 8. 4 16. 5 32. 6 64. 7 128. 8 256. 9 512. 10 1024. Et après ? On compte en Kilo, Méga, Giga, etc 210 = 1 Kilo 214 = 210 × 24 = 16 Kilo. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 6/38.

(29) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Unités informatiques En informatique, on travaille avec des puissance de 2 → Nos kilos ne font pas 1000 !. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 7/38.

(30) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Unités informatiques En informatique, on travaille avec des puissance de 2 → Nos kilos ne font pas 1000 !. Norme CEI 1998 Kibi = 210 = 1 024 Mebi = 220 = 1 048 576 Gibi = 230 = 1 073 741 824 Tebi = 240 = 1 099 511 627 776 etc. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 7/38.

(31) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Unités informatiques En informatique, on travaille avec des puissance de 2 → Nos kilos ne font pas 1000 !. Norme CEI 1998 Kibi = 210 = 1 024 Mebi = 220 = 1 048 576 Gibi = 230 = 1 073 741 824 Tebi = 240 = 1 099 511 627 776 etc Ü On devrait parler de. . kibioctets. . et non de kilooctets. Ü On devrait écrire Kio et non Ko Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 7/38.

(32) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Unités informatiques En informatique, on travaille avec des puissance de 2 → Nos kilos ne font pas 1000 !. Norme CEI 1998 Ü On devrait parler de. . kibioctets. . et non de kilooctets. Ü On devrait écrire Kio et non Ko. En pratique On utilise la notation 1 Ko pour indiquer 1 Kio (1024 octets) → On ne travaille JAMAIS avec des puissances de 10 !. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 7/38.

(33) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Et les puissances de 16 ? 24 = 16 → Avec 4 bits, on peut écrire les nombres de 0 à 15 (décimal). . .. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 8/38.

(34) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Et les puissances de 16 ? 24 = 16 → Avec 4 bits, on peut écrire les nombres de 0 à F (hexadécimal) ! Du coup, 32 bits = 8 caractères en hexa !. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 8/38.

(35) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Et les puissances de 16 ? 24 = 16 → Avec 4 bits, on peut écrire les nombres de 0 à F (hexadécimal) ! Du coup, 32 bits = 8 caractères en hexa !. Hexadécimal → Il faut savoir convertir rapidement :. Info32b. Base 10 Hexadécimal Base 2. 0 0 0000. 1 1 0001. 2 2 0010. 3 3 0011. 4 4 0100. 5 5 0101. 6 6 0110. 7 7 0111. Base 10 Hexadécimal Base 2. 8 8 1000. 9 9 1001. 10 A 1010. 11 B 1011. 12 C 1100. 13 D 1101. 14 E 1110. 15 F 1111. Systèmes d’Exploitation. Nicolas Sabouret. 8/38.

(36) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Et les puissances de 16 ? 24 = 16 → Avec 4 bits, on peut écrire les nombres de 0 à F (hexadécimal) ! Du coup, 32 bits = 8 caractères en hexa !. Hexadécimal → Il faut savoir convertir rapidement : Base 10 Hexadécimal Base 2. 0 0 0000. 1 1 0001. 2 2 0010. 3 3 0011. 4 4 0100. 5 5 0101. 6 6 0110. 7 7 0111. Base 10 Hexadécimal Base 2. 8 8 1000. 9 9 1001. 10 A 1010. 11 B 1011. 12 C 1100. 13 D 1101. 14 E 1110. 15 F 1111. Conversion d’adresse : 2 B 5 F. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 8/38.

(37) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Et les puissances de 16 ? 24 = 16 → Avec 4 bits, on peut écrire les nombres de 0 à F (hexadécimal) ! Du coup, 32 bits = 8 caractères en hexa !. Hexadécimal → Il faut savoir convertir rapidement : Base 10 Hexadécimal Base 2. 0 0 0000. 1 1 0001. 2 2 0010. 3 3 0011. 4 4 0100. 5 5 0101. 6 6 0110. 7 7 0111. Base 10 Hexadécimal Base 2. 8 8 1000. 9 9 1001. 10 A 1010. 11 B 1011. 12 C 1100. 13 D 1101. 14 E 1110. 15 F 1111. Conversion d’adresse : 2 B 5 F 0010 Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 8/38.

(38) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Et les puissances de 16 ? 24 = 16 → Avec 4 bits, on peut écrire les nombres de 0 à F (hexadécimal) ! Du coup, 32 bits = 8 caractères en hexa !. Hexadécimal → Il faut savoir convertir rapidement : Base 10 Hexadécimal Base 2. 0 0 0000. 1 1 0001. 2 2 0010. 3 3 0011. 4 4 0100. 5 5 0101. 6 6 0110. 7 7 0111. Base 10 Hexadécimal Base 2. 8 8 1000. 9 9 1001. 10 A 1010. 11 B 1011. 12 C 1100. 13 D 1101. 14 E 1110. 15 F 1111. Conversion d’adresse : 2 B 5 F 0010 1011 Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 8/38.

(39) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Et les puissances de 16 ? 24 = 16 → Avec 4 bits, on peut écrire les nombres de 0 à F (hexadécimal) ! Du coup, 32 bits = 8 caractères en hexa !. Hexadécimal → Il faut savoir convertir rapidement : Base 10 Hexadécimal Base 2. 0 0 0000. 1 1 0001. 2 2 0010. 3 3 0011. 4 4 0100. 5 5 0101. 6 6 0110. 7 7 0111. Base 10 Hexadécimal Base 2. 8 8 1000. 9 9 1001. 10 A 1010. 11 B 1011. 12 C 1100. 13 D 1101. 14 E 1110. 15 F 1111. Conversion d’adresse : 2 B 5 F 0010 1011 0101 Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 8/38.

(40) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Et les puissances de 16 ? 24 = 16 → Avec 4 bits, on peut écrire les nombres de 0 à F (hexadécimal) ! Du coup, 32 bits = 8 caractères en hexa !. Hexadécimal → Il faut savoir convertir rapidement : Base 10 Hexadécimal Base 2. 0 0 0000. 1 1 0001. 2 2 0010. 3 3 0011. 4 4 0100. 5 5 0101. 6 6 0110. 7 7 0111. Base 10 Hexadécimal Base 2. 8 8 1000. 9 9 1001. 10 A 1010. 11 B 1011. 12 C 1100. 13 D 1101. 14 E 1110. 15 F 1111. Conversion d’adresse : 2 B 5 F 0010 1011 0101 1111 Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 8/38.

(41) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Fonctionnement Lecture et écriture L’UC va récupérer les instructions dans la mémoire (fetch) ; L’UC va récupérer des données (valeurs de variables) dans la mémoire à partir de leur adresse ; L’UC écrit des valeurs à une adresse donnée dans la mémoire.. bus. RAM PC. UC RADM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 9/38.

(42) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Fonctionnement Lecture et écriture L’UC va récupérer les instructions dans la mémoire (fetch) ; L’UC va récupérer des données (valeurs de variables) dans la mémoire à partir de leur adresse ; L’UC écrit des valeurs à une adresse donnée dans la mémoire.. D’où viennent les programmes ? Le programme (code + données) est chargé depuis le disque vers la mémoire . . . il est placé à un endroit donné dans la mémoire. Ü Problème : quelles sont les adresses des variables ?. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 9/38.

(43) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Édition de liens Programme compilé vs processus vs. Adresses symboliques (noms de variables) Adresses mémoires (binaires). Exemple :. int a = 3; a = a + 2;. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 10/38.

(44) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Édition de liens Programme compilé vs processus vs. Adresses symboliques (noms de variables) Adresses mémoires (binaires). Exemple :. int a = 3; a = a + 2;. Info32b. @a memval 3 l d r r1 , a l d r r2 , #2 add r0 , r1 , r 2 s t r r0 , a. Systèmes d’Exploitation. Nicolas Sabouret. 10/38.

(45) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Édition de liens Programme compilé vs processus vs. Adresses symboliques (noms de variables) Adresses mémoires (binaires). Exemple : @a memval 3 l d r r1 , a l d r r2 , #2 add r0 , r1 , r 2 s t r r0 , a. int a = 3; a = a + 2;. 2B50 : 2B51 : 2B52 : 2B53 : ... 2B1E :. ldr ldr add str. r1 r2 r0 r0. , , , ,. 2B1E 0002 r1 , r 2 2B1E. 0003. Édition de liens Lors de la création de processus, l’OS instancie le programme. Ü Transformer les noms abstraits des variables en adresses Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 10/38.

(46) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Méthodes de liaison d’adresse À la compilation 3 On connaı̂t l’adresse physique du programme et de toutes les données Ü Adresse physique des variables à la compilation Exemple : routine de l’OS. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 11/38.

(47) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Méthodes de liaison d’adresse À la compilation Au chargement 3 La taille du programme (données+code+pile+tas) est fixée Ü Code compilé translatable : adresses relatives au début du programme Ü Nécessite un registre de translation dans l’UC. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 11/38.

(48) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Méthodes de liaison d’adresse À la compilation Au chargement À l’exécution 3 Lorsque le processus a besoin de plus de place Ü Déplacer le processus + réédition de lien Revoir la translation Éventuellement, revoir les adresses relatives. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 11/38.

(49) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Méthodes de liaison d’adresse À la compilation Au chargement À l’exécution Notion de stub 3 Bibliothèques : ne pas charger plusieurs fois Ü Chargement à la demande de code translatable (la bibliothèque) Ü Morceau de code remplaçable pour l’appel à la bibliothèque Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 11/38.

(50) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Code translatable : résolution d’adresse RAM UC translation. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 12/38.

(51) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Code translatable : résolution d’adresse RAM adresse logique translatable. UC translation. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 12/38.

(52) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Code translatable : résolution d’adresse RAM adresse logique translatable. UC translation. +. adresse physique. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 12/38.

(53) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe général Un peu de calcul. . . Liaison d’adresse. Code translatable : résolution d’adresse RAM adresse logique translatable. UC translation. +. adresse physique. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 12/38.

(54) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Plan. 1. Fonctionnement de la mémoire. 2. Pagination Allocation mémoire Pagination Pagination hiérarchique. 3. Mémoire virtuelle. 4. Conclusion. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 13/38.

(55) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(56) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM Proc. 1. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(57) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM Proc. 1. Info32b. Proc. 2. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(58) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM Proc. 1. Info32b. Proc. 2. Systèmes d’Exploitation. Proc. 3. Nicolas Sabouret. 14/38.

(59) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM Proc. 1. Proc. 2. Proc. 3. Problèmes Des trous apparaissent : c’est la fragmentation. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(60) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM Proc. 1. Proc. 3. Problèmes Des trous apparaissent : c’est la fragmentation. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(61) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM Proc. 1. P4. Proc. 3. Problèmes Des trous apparaissent : c’est la fragmentation. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(62) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM P4. Proc. 3. Problèmes Des trous apparaissent : c’est la fragmentation. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(63) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM P5. P4. Proc. 3. Problèmes Des trous apparaissent : c’est la fragmentation. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(64) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire P6. RAM P5. P4. Proc. 3. Problèmes Des trous apparaissent : c’est la fragmentation Les processus trop gros ne peuvent pas rentrer. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(65) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire P6. RAM P5. P4. Proc. 3. Problèmes Des trous apparaissent : c’est la fragmentation Les processus trop gros ne peuvent pas rentrer → défragmenter Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(66) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire P6. RAM P5. P4. Proc. 3. Problèmes Des trous apparaissent : c’est la fragmentation Les processus trop gros ne peuvent pas rentrer → défragmenter Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(67) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Allocation mémoire Principe Multiprogrammation et temps partagé → placer les processus dans la mémoire. RAM P5. P4. Proc. 3. P6. Problèmes Des trous apparaissent : c’est la fragmentation Les processus trop gros ne peuvent pas rentrer → défragmenter Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 14/38.

(68) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Fragmentation Problème Réduire la fragmentation Limiter les opérations de de défragmentation. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 15/38.

(69) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Fragmentation Problème Réduire la fragmentation Limiter les opérations de de défragmentation. Stratégies d’allocation Choisir dans quelle zone libre placer un processus. Variante du. problème du bin packing. First Fit : premier bloc libre Best Fit : plus petit bloc libre Worst Fit : plus grand bloc libre. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 15/38.

(70) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Fragmentation Problème Réduire la fragmentation Limiter les opérations de de défragmentation. Stratégies d’allocation Choisir dans quelle zone libre placer un processus. Variante du. problème du bin packing. First Fit : premier bloc libre Best Fit : plus petit bloc libre Worst Fit : plus grand bloc libre ⇒ À la fin, il faut quand même gérer les trous... Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 15/38.

(71) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination Principe Découper la mémoire physique en blocs de taille Tc constante, appelés cadres de pages Découper l’espace mémoire utilisé par un processus en paquets de x blocs de taille Tc , appelés pages Ü Placer les pages dans les cadres RAM. Processus : Info32b. code, bibliothèques environnement, tas, pile. . .. Systèmes d’Exploitation. Nicolas Sabouret. 16/38.

(72) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination Principe Découper la mémoire physique en blocs de taille Tc constante, appelés cadres de pages Découper l’espace mémoire utilisé par un processus en paquets de x blocs de taille Tc , appelés pages Ü Placer les pages dans les cadres RAM. cadres de page. Processus : Info32b. code, bibliothèques environnement, tas, pile. . .. Systèmes d’Exploitation. Nicolas Sabouret. 16/38.

(73) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination Principe Découper la mémoire physique en blocs de taille Tc constante, appelés cadres de pages Découper l’espace mémoire utilisé par un processus en paquets de x blocs de taille Tc , appelés pages Ü Placer les pages dans les cadres RAM. cadres de page. pages. Processus : Info32b. code, bibliothèques environnement, tas, pile. . .. Systèmes d’Exploitation. Nicolas Sabouret. 16/38.

(74) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination Principe Découper la mémoire physique en blocs de taille Tc constante, appelés cadres de pages Découper l’espace mémoire utilisé par un processus en paquets de x blocs de taille Tc , appelés pages Ü Placer les pages dans les cadres RAM. cadres de page. pages. Processus : Info32b. code, bibliothèques 0 1 tas,2 pile. . .3 environnement,. Systèmes d’Exploitation. Nicolas Sabouret. 16/38.

(75) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination Principe Découper la mémoire physique en blocs de taille Tc constante, appelés cadres de pages Découper l’espace mémoire utilisé par un processus en paquets de x blocs de taille Tc , appelés pages Ü Placer les pages dans les cadres RAM. cadres de page. pages. Processus : Info32b. code, bibliothèques 0 1 tas,2 pile. . .3 environnement,. Systèmes d’Exploitation. Nicolas Sabouret. 16/38.

(76) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination Principe Découper la mémoire physique en blocs de taille Tc constante, appelés cadres de pages Découper l’espace mémoire utilisé par un processus en paquets de x blocs de taille Tc , appelés pages Ü Placer les pages dans les cadres RAM. cadres de page. pages. Processus : Info32b. code, bibliothèques 0 1 tas,2 pile. . .3 environnement,. Systèmes d’Exploitation. Nicolas Sabouret. 16/38.

(77) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination Principe Découper la mémoire physique en blocs de taille Tc constante, appelés cadres de pages Découper l’espace mémoire utilisé par un processus en paquets de x blocs de taille Tc , appelés pages Ü Placer les pages dans les cadres RAM. cadres de page. pages. Processus : Info32b. code, bibliothèques 0 1 tas,2 pile. . .3 environnement,. Systèmes d’Exploitation. Nicolas Sabouret. 16/38.

(78) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination Principe Découper la mémoire physique en blocs de taille Tc constante, appelés cadres de pages Découper l’espace mémoire utilisé par un processus en paquets de x blocs de taille Tc , appelés pages Ü Placer les pages dans les cadres RAM. cadres de page. pages. Processus : Info32b. code, bibliothèques 0 1 tas,2 pile. . .3 environnement,. Systèmes d’Exploitation. Nicolas Sabouret. 16/38.

(79) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Avantages Allocation mémoire Allouer des processus dans des zones disjointes : Ü Pas besoin de défragmenter !. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 17/38.

(80) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Avantages Allocation mémoire Allouer des processus dans des zones disjointes : Ü Pas besoin de défragmenter !. Adaptation Lorsqu’un processus a besoin de plus de mémoire, rajouter des pages Ü Pas besoin de le ré-allouer entièrement. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 17/38.

(81) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Avantages Allocation mémoire Allouer des processus dans des zones disjointes : Ü Pas besoin de défragmenter !. Adaptation Lorsqu’un processus a besoin de plus de mémoire, rajouter des pages Ü Pas besoin de le ré-allouer entièrement. Mémoire virtuelle. (voir plus loin). Charger uniquement les pages du processus dont on a besoin à un moment donné. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 17/38.

(82) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Problèmes I Nombre de cadres Adresser les cadres (en binaire) → 2n cadres. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 18/38.

(83) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Problèmes I Nombre de cadres Adresser les cadres (en binaire) → 2n cadres. Taille des cadres/pages Adresser les éléments dans les cadres (en binaire) → taille en 2m. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 18/38.

(84) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Problèmes I Nombre de cadres Adresser les cadres (en binaire) → 2n cadres. Taille des cadres/pages Adresser les éléments dans les cadres (en binaire) → taille en 2m Ü RAM de taille 2n+m Sinon, portion de RAM non adressable ou cadres fictifs non utilisables. . .. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 18/38.

(85) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Problèmes I Nombre de cadres Adresser les cadres (en binaire) → 2n cadres. Taille des cadres/pages Adresser les éléments dans les cadres (en binaire) → taille en 2m Ü RAM de taille 2n+m Sinon, portion de RAM non adressable ou cadres fictifs non utilisables. . .. Fragmentation Tous les processus ne sont pas de taille k × 2m Ü Entre 0 et 2m − 1 octets perdus par processus ! (moyenne = Info32b. 1 2. cadre = 2m−1 octets). Systèmes d’Exploitation. Nicolas Sabouret. 18/38.

(86) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Problèmes II Adressage Déterminer l’adresse physique à partir de l’adresse logique RAM 0. Processus :. Info32b. 3. 1. 0. 1. Systèmes d’Exploitation. 2. 2. 3. Nicolas Sabouret. 19/38.

(87) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Problèmes II Adressage Déterminer l’adresse physique à partir de l’adresse logique. Adresse logique Numéro de page (n bits) + décalage (m bits). Table des pages Chaque processus maintient une liste : numéro de page ↔ numéro de cadre C’est la table des pages. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 19/38.

(88) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse RAM UC. table des pages. Info32b. page. cadre. 00 01 02 03 04 .... 02 B2 1A 3B 3C .... Systèmes d’Exploitation. Nicolas Sabouret. 20/38.

(89) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse RAM adresse logique. UC. table des pages. Info32b. page. cadre. 00 01 02 03 04 .... 02 B2 1A 3B 3C .... Systèmes d’Exploitation. Nicolas Sabouret. 20/38.

(90) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse RAM adresse logique. UC numéro de page. décalage. table des pages. Info32b. page. cadre. 00 01 02 03 04 .... 02 B2 1A 3B 3C .... Systèmes d’Exploitation. Nicolas Sabouret. 20/38.

(91) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse RAM adresse logique. UC numéro de page. décalage. table des pages. Info32b. page. cadre. 00 01 02 03 04 .... 02 B2 1A 3B 3C .... Systèmes d’Exploitation. Nicolas Sabouret. 20/38.

(92) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse RAM adresse logique. UC numéro de page. table des pages. Info32b. page. cadre. 00 01 02 03 04 .... 02 B2 1A 3B 3C .... décalage. numéro de cadre. Systèmes d’Exploitation. Nicolas Sabouret. 20/38.

(93) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse RAM adresse logique. UC numéro de page. table des pages. Info32b. page. cadre. 00 01 02 03 04 .... 02 B2 1A 3B 3C .... décalage. numéro de cadre. Systèmes d’Exploitation. décalage. adresse physique. Nicolas Sabouret. 20/38.

(94) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse RAM adresse logique. UC numéro de page. table des pages. Info32b. page. cadre. 00 01 02 03 04 .... 02 B2 1A 3B 3C .... décalage. numéro de cadre. Systèmes d’Exploitation. décalage. adresse physique. Nicolas Sabouret. 20/38.

(95) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse Memory Management Unit En pratique, géré au niveau matériel : c’est la MMU 3 L’OS charge la table des pages du processus dans la MMU Ü Pas de calcul d’adresse au niveau de l’OS. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 21/38.

(96) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination : résolution d’adresse Memory Management Unit En pratique, géré au niveau matériel : c’est la MMU 3 L’OS charge la table des pages du processus dans la MMU Ü Pas de calcul d’adresse au niveau de l’OS. Allocation des cadres Ne pas allouer le même cadre à deux processus différents 3 L’OS doit savoir quel processus utilise quel cadre Ü Table des cadres de page libres. Info32b. num. cadre. num. proc.. libre. 0 1 2 .... 42 37 .... 1 1 0 .... Systèmes d’Exploitation. Nicolas Sabouret. 21/38.

(97) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination hiérarchique Problème Grand espace d’adressage (ex : 32 bits) Trop de pages (ex : n = 20, m = 12) Grande table des pages → place mémoire perdue 220 lignes de 20 bits = 2,5 Mo par processus. Allocation et commutation plus coûteuse en temps. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 22/38.

(98) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination hiérarchique Problème Grand espace d’adressage (ex : 32 bits) Trop de pages (ex : n = 20, m = 12) Grande table des pages → place mémoire perdue 220 lignes de 20 bits = 2,5 Mo par processus. Allocation et commutation plus coûteuse en temps. Pages trop grosses (ex : n = 10, m = 22) Fragmentation = 2m−1 → place mémoire perdue 221 octets = 2 Mo par processus. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 22/38.

(99) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination hiérarchique Problème Grand espace d’adressage (ex : 32 bits) Trop de pages (ex : n = 20, m = 12) Grande table des pages → place mémoire perdue 220 lignes de 20 bits = 2,5 Mo par processus. Allocation et commutation plus coûteuse en temps. Pages trop grosses (ex : n = 10, m = 22) Fragmentation = 2m−1 → place mémoire perdue 221 octets = 2 Mo par processus. Pagination à 2 niveaux (ou plus) Paginer la table des pages. (et ne charger que les tables utiles). Réduire la fragmentation due aux pages Réduire l’espace mémoire utilisé par le système d’adressage Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 22/38.

(100) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux RAM adresse logique. UC. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 23/38.

(101) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux RAM adresse logique. UC table. Info32b. Systèmes d’Exploitation. page. décalage. Nicolas Sabouret. 23/38.

(102) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux RAM adresse logique. UC table. page. décalage. Répertoire de pages n° adresse T.P.. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 23/38.

(103) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux RAM adresse logique. UC page. table. Répertoire de pages. décalage. Table des pages n°X. n° adresse T.P.. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 23/38.

(104) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux RAM adresse logique. UC page. table. Répertoire de pages. décalage. Table des pages n°X. n° adresse T.P. page. Info32b. Systèmes d’Exploitation. cadre. Nicolas Sabouret. 23/38.

(105) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux RAM adresse logique. UC page. table. Répertoire de pages. décalage. Table des pages n°X. cadre. n° adresse T.P. page. Info32b. Systèmes d’Exploitation. cadre. Nicolas Sabouret. 23/38.

(106) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux RAM adresse logique. UC page. table. Répertoire de pages. décalage. Table des pages n°X. cadre. décal.. adresse physique n° adresse T.P. page. Info32b. Systèmes d’Exploitation. cadre. Nicolas Sabouret. 23/38.

(107) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux RAM adresse logique. UC page. table. Répertoire de pages. décalage. Table des pages n°X. cadre. décal.. adresse physique n° adresse T.P. page. Info32b. Systèmes d’Exploitation. cadre. Nicolas Sabouret. 23/38.

(108) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Exemple Adresses sur 32 bits et cadres de 4 Ko → m=12. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 24/38.

(109) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Exemple Adresses sur 32 bits et cadres de 4 Ko → m=12. Pagination à 1 niveau Table des pages =. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 24/38.

(110) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Exemple Adresses sur 32 bits et cadres de 4 Ko → m=12. Pagination à 1 niveau Table des pages = 2n lignes de n bits (ici, n = 20). Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 24/38.

(111) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Exemple Adresses sur 32 bits et cadres de 4 Ko → m=12. Pagination à 1 niveau Table des pages = 2n lignes de n bits (ici, n = 20) Total = 220 × 20 ÷ 8 = 2,5 Mo par processus. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 24/38.

(112) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Exemple Adresses sur 32 bits et cadres de 4 Ko → m=12. Pagination à 1 niveau Table des pages = 2n lignes de n bits (ici, n = 20) Total = 220 × 20 ÷ 8 = 2,5 Mo par processus. Pagination à 2 niveaux n1 = 10, n2 = 10, m = 12 Répertoire =. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 24/38.

(113) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Exemple Adresses sur 32 bits et cadres de 4 Ko → m=12. Pagination à 1 niveau Table des pages = 2n lignes de n bits (ici, n = 20) Total = 220 × 20 ÷ 8 = 2,5 Mo par processus. Pagination à 2 niveaux n1 = 10, n2 = 10, m = 12 Répertoire = 210 lignes de 32 bits = 4 Ko 1 table de pages =. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 24/38.

(114) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Exemple Adresses sur 32 bits et cadres de 4 Ko → m=12. Pagination à 1 niveau Table des pages = 2n lignes de n bits (ici, n = 20) Total = 220 × 20 ÷ 8 = 2,5 Mo par processus. Pagination à 2 niveaux n1 = 10, n2 = 10, m = 12 Répertoire = 210 lignes de 32 bits = 4 Ko 1 table de pages = 210 lignes de 20 bits = 2,5 Ko. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 24/38.

(115) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Exemple Adresses sur 32 bits et cadres de 4 Ko → m=12. Pagination à 1 niveau Table des pages = 2n lignes de n bits (ici, n = 20) Total = 220 × 20 ÷ 8 = 2,5 Mo par processus. Pagination à 2 niveaux n1 = 10, n2 = 10, m = 12 Répertoire = 210 lignes de 32 bits = 4 Ko 1 table de pages = 210 lignes de 20 bits = 2,5 Ko Total = entre 6,5 Ko et 2,5 Mo par processus Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 24/38.

(116) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(117) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = ?. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(118) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(119) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = ?. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(120) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(121) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres Ü Taille d’un cadre = ?. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(122) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres Ü Taille d’un cadre = 2m octets. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(123) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres Ü Taille d’un cadre = 2m octets Ü Taille du répertoire = ?. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(124) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres Ü Taille d’un cadre = 2m octets Ü Taille du répertoire = 2n1 × k bits. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(125) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres Ü Taille d’un cadre = 2m octets Ü Taille du répertoire = 2n1 × k bits Ü Taille d’une table de pages = ?. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(126) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres Ü Taille d’un cadre = 2m octets Ü Taille du répertoire = 2n1 × k bits Ü Taille d’une table de pages = 2n2 × (n1 + n2 ) bits ou 2n2 × (k − m). . .. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(127) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres Ü Taille d’un cadre = 2m octets Ü Taille du répertoire = 2n1 × k bits Ü Taille d’une table de pages = 2n2 × (n1 + n2 ) bits ou 2n2 × (k − m). . .. Ü Nombre de tables de pages = ?. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(128) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Quelques formules Adresse physique sur k bits Adresse logique sur k = n1 + n2 + m bits Ü Taille de la RAM = 2k octets Ü Nombre de cadres = 2n1 +n2 cadres Ü Taille d’un cadre = 2m octets Ü Taille du répertoire = 2n1 × k bits Ü Taille d’une table de pages = 2n2 × (n1 + n2 ) bits ou 2n2 × (k − m). . .. Ü Nombre de tables de pages = 2n1 tables. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 25/38.

(129) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Allocation mémoire Pagination Pagination hiérarchique. Pagination à deux niveaux Remarque Pagination à 3 niveaux sur les processeurs 64 bits. Implémentation Table des pages en RAM Tous les calculs sont effectués au niveau matériel dans la MMU Registre d’adresse de la table des pages Table des cadres libres. Cache matériel (TLB = Translation Lookaside Buffer) stocke les couples (page,cadre). Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 26/38.

(130) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Plan. 1. Fonctionnement de la mémoire. 2. Pagination. 3. Mémoire virtuelle Principe Pagination à la demande Allocation. 4. Conclusion. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 27/38.

(131) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Mémoire virtuelle Problème Nombre et taille des processus Entre 200 et 500 processus en parallèle sur un PC Gros processus : Eclipse = 250 Mo, données d’un jeu ≥ 1 Go → Somme des tailles des processus ≥ Capacité RAM. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 28/38.

(132) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Mémoire virtuelle Problème Nombre et taille des processus Entre 200 et 500 processus en parallèle sur un PC Gros processus : Eclipse = 250 Mo, données d’un jeu ≥ 1 Go → Somme des tailles des processus ≥ Capacité RAM. Portions de code inutilisées Traitement d’erreur → rarement utilisé Données du jeu → pas tout en même temps Données d’un tableau → pas tout en même temps Bibliothèque → très variable ! → ne charger que les pages utiles ! (laisser le reste sur le disque. . . ) Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 28/38.

(133) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Schéma de principe Mémoire virtuelle Chaque processus peut adresser plus d’espace qu’il n’a effectivement en mémoire physique. Mémoire virtuelle. =. espace adressable. page page. page page. page page. page page. page page. page page. page page. page page. (par processus). Mémoire physique (RAM). Info32b. Systèmes d’Exploitation. Espace de stockage (disque). Nicolas Sabouret. 29/38.

(134) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Schéma de principe Mémoire virtuelle Chaque processus peut adresser plus d’espace qu’il n’a effectivement en mémoire physique page 0 page 1. Mémoire virtuelle. pages utilisées. page 4. =. espace adressable. page page. page page. page page. page page. page page. page page. page page. page page. (par processus). Mémoire physique (RAM). Info32b. Systèmes d’Exploitation. Espace de stockage (disque). Nicolas Sabouret. 29/38.

(135) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Schéma de principe Mémoire virtuelle Chaque processus peut adresser plus d’espace qu’il n’a effectivement en mémoire physique page 0 page 1. pages utilisées page 1. Mémoire virtuelle. =. page 4. page page. page page. page 0. page page. page page. page 4. page page. page page. page page. page page. espace adressable (par processus). Mémoire physique (RAM). Info32b. Systèmes d’Exploitation. Espace de stockage (disque). Nicolas Sabouret. 29/38.

(136) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Schéma de principe Mémoire virtuelle Chaque processus peut adresser plus d’espace qu’il n’a effectivement en mémoire physique page 0 page 1 page 2. pages non utilisées page 1 page page. page page. page 4. page 0. page page. page page. page 5. page 4. page page. page page. page page. page page. page 3. Mémoire virtuelle. =. espace adressable. .... (par processus). Mémoire physique (RAM). Info32b. Systèmes d’Exploitation. Espace de stockage (disque). Nicolas Sabouret. 29/38.

(137) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Schéma de principe Mémoire virtuelle Chaque processus peut adresser plus d’espace qu’il n’a effectivement en mémoire physique page 0 page 1 page 2. pages non utilisées page 1 page page. page page. page 4. page 0. page page. page page. page 5. page 4. page page. page page. page page. page page. page 3. Mémoire virtuelle. =. espace adressable. .... (par processus). Mémoire physique (RAM). Info32b. Systèmes d’Exploitation. Espace de stockage (disque). Nicolas Sabouret. 29/38.

(138) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Schéma de principe Mémoire virtuelle Chaque processus peut adresser plus d’espace qu’il n’a effectivement en mémoire physique. Avantages Possibilité de mettre plus de processus en parallèles Le programmeur ne se préoccupe plus de la mémoire. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 30/38.

(139) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Schéma de principe Mémoire virtuelle Chaque processus peut adresser plus d’espace qu’il n’a effectivement en mémoire physique. Avantages Possibilité de mettre plus de processus en parallèles Le programmeur ne se préoccupe plus de la mémoire. Pagination à la demande Table des pages : bit de validité (0=page sur le disque) L’OS charge les pages manquantes depuis le disque vers la RAM Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 30/38.

(140) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande. ... ldr r0, @a ldr r1, @b add r2, r0, r1 str r2, @c. .... Processus. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 31/38.

(141) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande. ... ldr r0, @a. 1. référence. ldr r1, @b add r2, r0, r1 str r2, @c. .... Processus. Info32b. Table des pages. Systèmes d’Exploitation. Nicolas Sabouret. 31/38.

(142) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande. ... ldr r0, @a ldr r1, @b add r2, r0, r1. 1. référence défaut de page. str r2, @c. .... Processus. Info32b. –. 0. Table des pages. Systèmes d’Exploitation. Nicolas Sabouret. 31/38.

(143) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande. OS. 2. déroutement. ... ldr r0, @a ldr r1, @b add r2, r0, r1. 1. référence défaut de page. str r2, @c. .... Processus. Info32b. –. 0. Table des pages. Systèmes d’Exploitation. Nicolas Sabouret. 31/38.

(144) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande 3. requête disque. OS Disque 2. déroutement. ... ldr r0, @a ldr r1, @b add r2, r0, r1. 1. référence défaut de page. str r2, @c. .... Processus. Info32b. –. 0. Table des pages. Systèmes d’Exploitation. Nicolas Sabouret. 31/38.

(145) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande 3. requête disque. OS. 4. allocation UC à un autre processus. Disque 2. déroutement. ... ldr r0, @a ldr r1, @b add r2, r0, r1. 1. référence défaut de page. str r2, @c. .... Processus. Info32b. –. 0. Table des pages. Systèmes d’Exploitation. Nicolas Sabouret. 31/38.

(146) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande 3. requête disque. OS. 5. fin d’E/S → interruption. 4. allocation UC à un autre processus. Disque 2. déroutement. ... ldr r0, @a. 1. référence. ldr r1, @b add r2, r0, r1 str r2, @c. .... Processus. Info32b. Table des pages. Systèmes d’Exploitation. Nicolas Sabouret. 31/38.

(147) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande 3. requête disque. OS. 5. fin d’E/S → interruption. 4. allocation UC à un autre processus. Disque 2. déroutement 6. chargement page manquante. disponible. ... ldr r0, @a. 1. référence. ldr r1, @b add r2, r0, r1 str r2, @c. .... Processus. Info32b. Table des pages. Systèmes d’Exploitation. Mémoire physique (RAM). Nicolas Sabouret. 31/38.

(148) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande 3. requête disque. OS. 5. fin d’E/S → interruption. 4. allocation UC à un autre processus. Disque 2. déroutement 6. chargement page manquante. disponible. ... ldr r0, @a. 1. référence. ldr r1, @b add r2, r0, r1. 7. mise à jour table(s). str r2, @c. .... Processus. Info32b. n° cadre. 1. Table des pages. Systèmes d’Exploitation. Mémoire physique (RAM). Nicolas Sabouret. 31/38.

(149) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Pagination à la demande 3. requête disque. OS. 5. fin d’E/S → interruption. 4. allocation UC à un autre processus. Disque 2. déroutement 6. chargement page manquante. disponible. ... ldr r0, @a. 1. référence. ldr r1, @b add r2, r0, r1. 7. mise à jour table(s). str r2, @c. .... Processus. Info32b. n° cadre. 1. 8. instruction relancée. Table des pages. Systèmes d’Exploitation. Mémoire physique (RAM). Nicolas Sabouret. 31/38.

(150) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Temps d’accès Coût des défauts de page p = probabilité d’avoir un défaut de page M = temps d’accès à la mémoire D = temps de traitement du défaut de page (accès disque) Temps d’accès = (1 − p) × M + p × D = M + p(D − M). Propriété Le temps d’accès est proportionnel à la probabilité d’avoir un défaut de page. Accès disque En pratique, M est 1000 fois plus petit que D. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 32/38.

(151) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Allocation Problème Combien de cadres (RAM) allouer à chaque processus. Propriétés Plus de cadre par processus → moins de processus → ralentissement Moins de cadre par processus → plus de défauts → ralentissement. Politiques d’allocation Allocation équitable Allocation proportionnelle Allocation basée sur la priorité Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 33/38.

(152) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Allocation équitable Données N cadres disponibles en RAM P processus. Allocation équitable Chaque processus reçoit N/P cadres Le reste sert de tampon Lors du remplacement de page, charger et relancer sans supprimer l’ancienne page → réduction du nombre de défauts. Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 34/38.

(153) Fonctionnement de la mémoire Pagination Mémoire virtuelle Conclusion Principe Pagination à la demande Allocation. Allocation équitable Données N cadres disponibles en RAM P processus. Allocation équitable Chaque processus reçoit N/P cadres Le reste sert de tampon Lors du remplacement de page, charger et relancer sans supprimer l’ancienne page → réduction du nombre de défauts. Inconvénient Tous les processus n’ont pas besoin de la même quantité de mémoire. . . Info32b. Systèmes d’Exploitation. Nicolas Sabouret. 34/38.

Références

Documents relatifs

rious memory bounds for two problems, with 10 agents, the priority strategy, and a repeat bound of 1 (R1), As said before, when the memory limit is low, learning becomes difficult,

Activités productives : activités artisanales, activités de haute technologie, activités industrielles, activités de production de services matériels et de

CONSIDERANT qu’afin de pouvoir utiliser, dès le début de l’exercice, les contrats de financement long terme renouvelables, au maximum de leurs possibilités, il

Fonctions au sein d’organes de direction, de surveillance, de conseil ou autres dans des sociétés, établissements ou fondations suisses ou étrangers, de droit privé ou de

Bassani ne cherche plus de réponses au mal ou à l’absurde, mais se plonge dans une quête proustienne du passé, de la douceur du temps perdu.. L’Odeur du foin, emblématique de

*) Le centre de la qualité sera chargé d’accompagner la DCAM dans le déroulement de son action qualité, notamment en apportant un soutien méthodologique et en animant les

La proposition pour le Registre de bonnes pratiques de sauvegarde élaborée grâce à cette assistance préparatoire doit être soumise en remplissant le formulaire ICH-03, avant la

Ouverture de la séance sous la présidence de Monsieur Daniel CALAS, Maire de Gragnague, Etaient présents : Monsieur Daniel CALAS – Monsieur Didier AVERSENG – Madame