SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Gestion de la mémoire
Algorithme de remplacement
Pr. My Driss LAANAOUI 1
Revue
• Quelle partie du matériel transforme les adresses logiques
en adresses physiques?
• Comment on appel l’événement quand une Trap est fait au
SE parce qu’une page n’est pas en mémoire?
• Quel problème est-ce que les tables de pages multiniveaux
résoudrent?
• Dans un Répertoire de page actives (RPA – TLB), quel genre
de mémoire doit on avoir pour accélérer les recherches?
• Pour un système avec une mémoire très, très grande, quelle
est notre solution pour remplacer les tables de pages qui
seraient effarantes?
2
Plan
• Pagination
• Remplacement de pages
• Algorithme LRU
• Algorithme PAPS
• Comparaison des algorithmes
• Application
• Segmentation
• Principe
• Application
• Segmetation vs pagination
• Solution hybride
3
Introduction
•On se rappel: la pagination suit un ensemble de
règles:
• Elle permet à un programme d’être chargé en mémoire
une page à la fois
• Il y a un genre de table qui identifie quelle page est
chargée dans quel cadre
• Quand une page est demandée et qu’elle n’est pas en
mémoire physique, un défaut de page se produit
• Le SE doit maintenant charger la page dans la mémoire. Si il n’y a
pas de cadre libre, une page doit être évincée de la mémoire.
Quelle page est choisit pour être évincée?
4
Introduction
5
Exécution d’une défaut de page: va-et-vient plus en détail
Introduction
6
Exécution d’une défaut de page: va-et-vient plus en détail
Introduction
Temps moyen d’accès à la mémoire
Supposons que:
• accès en mémoire: 100 nanosecs
• temps de traitement de défaut de page: 25 millisecs =
25,000,000 nanosecs
• p: probabilité de ne pas trouver une page en mémoire
(défaut) (quantité entre 0 et 1)
Alors Temps moyen d’accès mémoire:
(1-p) x 100 + p x 25,000,000
(pas de défaut + défaut)
7
Remplacement de pages
• Quoi faire si un processus demande une nouvelle page et il
n’y a pas de cadres libres en RAM?
• Il faudra choisir une page déjà en mémoire principale,
appartenant au même ou à un autre processus, qu’il est
possible d ’enlever de la mémoire principale
• la victime!
• Un cadre de mémoire sera donc rendu disponible
• Évidemment, plusieurs cadres de mémoire ne peuvent pas
être "victimisé":
• p.ex. cadres contenant le noyau du SE, tampons d ’E/S...
8
Remplacement de pages
•Choisir la victime de façon à minimiser le taux de
défaut de pages
•Page dont nous n`aurons pas besoin dans le futur?
impossible à savoir!
•Page pas souvent utilisée?
•Page qui a été déjà longtemps en mémoire.
9
Remplacement de pages
•Les algorithmes de choix de pages à remplacer
doivent être conçus de façon à minimiser le taux de
défaut de pages à long terme.
•Mais il ne peuvent pas impliquer des temps de
système excessifs, p.ex. mise à jour de tableaux en
mémoire pour chaque accès de mémoire.
•Ni l`utilisation de matériel dispendieux.
10
Remplacement de pages
•Il existe un ensemble d’algorithmes qui peuvent
être utilisés pour choisir quelle page va être la
meilleure candidate pour l’éviction
•Considérations:
• Les pages qui vont avoir été modifié doivent être écrites
sur le disque avant l’éviction
• L’utilisation de l’information d’état tel que les bits
d’utilisations (used) et de modifications (dirty) vont être
utiles pour prendre cette décision
• Ces algorithmes sont applicables à d’autres domaines de
recherche: caches, serveurs Web, etc...
11
Pagination
Le principe de la pagination est simple (sa mise en œuvre, par
contre, est assez complexe): l'espace d'adressage de chaque
programme est partagé en blocs de taille fixe (des tailles de 4-16KB
sont courantes), les pages, et seulement les pages en train d'être
utilisées sont chargées en mémoire. Le restant de l'espace
d'adressage est stocké sur le disque dur.
Les adresses physiques des pages en mémoire
sont stockées dans une page table.
DD
RAM
Espace
d'adressage
31 0
OS
Page Table
Pagination - Adressage
Une adresse virtuelle est donc composée de deux parties: un numéro
de page et un déplacement dans la page.
Cette transformation, réalisée par le MMU, permet d'une part de
travailler avec des espaces d'adressage plus grands que la mémoire
physique, et d'autre part de référencer des données sur une même
page avec peu de bits (ce qui permet l'utilisation de certains modes
d'adressage).
Numéro de page Déplacement
Base
31 12 11 0
25 12
MMU
Déplacement
11 0
Exemple:
Largeur des adresses = 32bits
Taille des pages = 4KB
Taille de la mémoire = 64MB
Pagination - Page faults
Une adresse virtuelle peut donc référencer soit une page en mémoire
(page hit) soit une page sur le disque dur (page miss).
Si la page cherchée se trouve sur le disque dur, le MMU engendre une
interruption (page fault) et une procédure se charge de transférer les
données en mémoire (une opération qui demande plusieurs millions de
cycles d'horloge).
La taille des pages est un paramètre fondamentale dans la
minimisation des page faults: une taille trop petite augmente le
nombre de page miss, et une taille trop grande augmente la pénalité
associé au transfert des données. Dans les systèmes actuels, la taille des
pages varie entre 4 et 16KB.
Pagination - Remplacement
Lors qu'une nouvelle page est transférée du disque dur à la mémoire,
il est parfois nécessaire d'en transférer une autre de la mémoire au
disque dur (swap).
Étant donné le "prix" très élevé d'un page fault, l'algorithme utilisé
pour décider quelle page va être "swappée" est fondamental pour la
performance d'un système. L'algorithme de choix pour cette opération
est le LRU (least recently used).
Si la mémoire est trop petite par rapport aux besoins d'un
programme, ou si l'algorithme de swap n'est pas efficace ou si les
données sont "mal" stockées, le phénomène appelé thrashing peut se
produire: la machine passe tout son temps à transférer des pages et
n'arrive pas à calculer.
Le MMU doit trouver l'adresse de la page physique
correspondant à une page virtuelle. Pour effectuer cette
opération, il consulte un tableau de pages (page table),
stocké en mémoire et géré par l'OS.
Page table address register
Pagination - Implémentation
Numéro de page Déplacement
Base
31 12 11 0
25 12
Déplacement
11 0
Exemple:
Largeur des adresses = 32bits
Taille des pages = 4KB
Taille de la mémoire = 64MB
VALID BIT
PAGE TABLE
Pagination - TLB
Pendant l'exécution d'un programme, la même page est
souvent référencée plusieurs fois de suite. Pour accélérer la
recherche de l'adresse physique, on utilise un "raccourci"
matériel: le TLB ou translation lookaside buffer (une petite
table dans le processeur). Page table address register
Numéro de page Déplacement
Base Déplacement
VALID BIT
PAGE TABLE
TLB
Algorithme LRU
•Ordre chronologique d’utilisation (LRU)
•Remplace la page dont la dernière référence
remonte au temps le plus lointain (le passé utilisé
pour prédire le futur)
• En raison de la localité des références, il s’agit de la
page qui a le moins de chance d’être référencée
• performance presque aussi bonne que l’algo. OPT
18
Algorithme LRU
19
Algorithme LRU
• Chaque page peut être marquée (dans le descripteur dans la
table de pages) du temps de la dernière référence:
• besoin de matériel supplémentaire.
• La page LRU est celle avec la + petite valeur de temps
(nécessité d’une recherche à chaque défaut de page)
• On pourrait penser à utiliser une liste de pages dans l’ordre
d ’utilisation: perte de temps à maintenir et consulter cette
liste (elle change à chaque référence de mémoire!)
• D’autres algorithmes sont utilisés:
• LRU approximations
20
Algorithme PAPS
•Premier arrivé, premier sortie PAPS (FIFO)
• Facile à implémenter. Garde une liste de toutes les page
en mémoire en ordre quelles sont arrivées
• Sur un défaut de page, la page la plus vielle est enlevée et
une nouvelle page est ajoutée à la fin de la liste
• Avantage: Très facile à implémenter
• Désavantage: Aucune façon de déterminer si la page qui
est enlevée est en grande utilisation. L’âge peut être une
indication mais n’est pas nécessairement la meilleure
indication de l’utilisation d’une page.
21
Algorithme PAPS
•Logique: une page qui a été longtemps en mémoire
a eu sa chance d ’exécuter
•Les cadres forment conceptuellement un tampon
circulaire, débutant à la plus vieille page
• Lorsque la mémoire est pleine, la plus vieille page est
remplacée. Donc: “first-in, first-out”
•Simple à mettre en application
• tampon consulté et mis à jour seulement aux défauts de
pages...
•Mais: Une page fréquemment utilisée est souvent la
plus vielle, elle sera remplacée par FIFO!
22
Algorithme PAPS
23
Algorithme PAPS
•Les premières pages amenées en mémoire sont
souvent utiles pendant toute l’exécution d’un
processus!
• variables globales, programme principal, etc.
•Ce qui montre un problème avec notre façon de
comparer les méthodes sur la base d ’une séquence
aléatoire:
• les références aux pages dans un programme réel ne
seront pas vraiment aléatoires
24
Application
25
On considère un système de pagination dont la taille est égale à 4KO, la
mémoire physique est de 12 KO et le mot mémoire de 1 Octet.
1. Combien de cadres de pages contient cette mémoire?
2. Soit un programme de taille 24 KO, qui fait référence aux adresses
logiques suivantes:
2,5012,6200,2000,17800,50,13248,5741,9442,16524,23580,16895,22630,123
a. Donner pour chaque adresse, le numéro de page et le
déplacement dans la page (p,d)
b.Déduire la chaine de pages référencées durant l’execution de ce
programme
3. Calculer le taux de défaut de page résulté par un remplacement FIFO et
LRU. Quel algorithme minimise ce taux?

Contenu connexe

Similaire à gestion MEMEMOIRE SYSTEME D EXPLOITATION

Meetup Google Cloud
Meetup Google CloudMeetup Google Cloud
Meetup Google CloudPierre Coste
 
Synchroniser ses applications (plus) simplement
Synchroniser ses applications (plus) simplementSynchroniser ses applications (plus) simplement
Synchroniser ses applications (plus) simplementgplanchat
 
Big Data ou comment retrouver une aiguille dans une botte de foin
Big Data ou comment retrouver une aiguille dans une botte de foinBig Data ou comment retrouver une aiguille dans une botte de foin
Big Data ou comment retrouver une aiguille dans une botte de foinPALO IT
 
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)GUSS
 
Presentation des outils traitements distribues
Presentation des outils traitements distribuesPresentation des outils traitements distribues
Presentation des outils traitements distribuesLê Anh
 
Le b.a.-ba du web scraping
Le b.a.-ba du web scrapingLe b.a.-ba du web scraping
Le b.a.-ba du web scrapingAlexandre Gindre
 
Hibernate vs le_cloud_computing
Hibernate vs le_cloud_computingHibernate vs le_cloud_computing
Hibernate vs le_cloud_computingIppon
 
Elasticsearch performance tuning
Elasticsearch performance tuningElasticsearch performance tuning
Elasticsearch performance tuningebiznext
 
Perfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxPerfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxMarc Bojoly
 
Big data: NoSQL comme solution
Big data: NoSQL comme solutionBig data: NoSQL comme solution
Big data: NoSQL comme solutionJEMLI Fathi
 
Hibernate vs le Cloud computing
Hibernate vs le Cloud computingHibernate vs le Cloud computing
Hibernate vs le Cloud computingJulien Dubois
 
Hibernate vs le_cloud_computing
Hibernate vs le_cloud_computingHibernate vs le_cloud_computing
Hibernate vs le_cloud_computingNormandy JUG
 
La mise en cache et ses secrets
La mise en cache et ses secretsLa mise en cache et ses secrets
La mise en cache et ses secretsAymeric Bouillat
 
Apache solr andré bois-crettez 08
Apache solr   andré bois-crettez 08Apache solr   andré bois-crettez 08
Apache solr andré bois-crettez 08Loïc Descotte
 
Journées SQL Server 2012 Attentes et Performances
Journées SQL Server 2012   Attentes et PerformancesJournées SQL Server 2012   Attentes et Performances
Journées SQL Server 2012 Attentes et PerformancesDavid BAFFALEUF
 
BigData_Technologies_PL.pdf
BigData_Technologies_PL.pdfBigData_Technologies_PL.pdf
BigData_Technologies_PL.pdfMissaouiWissal
 

Similaire à gestion MEMEMOIRE SYSTEME D EXPLOITATION (20)

Meetup Google Cloud
Meetup Google CloudMeetup Google Cloud
Meetup Google Cloud
 
Synchroniser ses applications (plus) simplement
Synchroniser ses applications (plus) simplementSynchroniser ses applications (plus) simplement
Synchroniser ses applications (plus) simplement
 
Cache
CacheCache
Cache
 
Big Data ou comment retrouver une aiguille dans une botte de foin
Big Data ou comment retrouver une aiguille dans une botte de foinBig Data ou comment retrouver une aiguille dans une botte de foin
Big Data ou comment retrouver une aiguille dans une botte de foin
 
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
GUSS - Les IO dans SQL Server (en partenariat avec DataCore)
 
Presentation des outils traitements distribues
Presentation des outils traitements distribuesPresentation des outils traitements distribues
Presentation des outils traitements distribues
 
Le b.a.-ba du web scraping
Le b.a.-ba du web scrapingLe b.a.-ba du web scraping
Le b.a.-ba du web scraping
 
Exchange 2013 Bonnes pratiques
Exchange 2013 Bonnes pratiques Exchange 2013 Bonnes pratiques
Exchange 2013 Bonnes pratiques
 
Hibernate vs le_cloud_computing
Hibernate vs le_cloud_computingHibernate vs le_cloud_computing
Hibernate vs le_cloud_computing
 
Elasticsearch performance tuning
Elasticsearch performance tuningElasticsearch performance tuning
Elasticsearch performance tuning
 
Base de données
Base de donnéesBase de données
Base de données
 
Perfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxPerfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptx
 
Big data: NoSQL comme solution
Big data: NoSQL comme solutionBig data: NoSQL comme solution
Big data: NoSQL comme solution
 
Hibernate vs le Cloud computing
Hibernate vs le Cloud computingHibernate vs le Cloud computing
Hibernate vs le Cloud computing
 
Hibernate vs le_cloud_computing
Hibernate vs le_cloud_computingHibernate vs le_cloud_computing
Hibernate vs le_cloud_computing
 
La mise en cache et ses secrets
La mise en cache et ses secretsLa mise en cache et ses secrets
La mise en cache et ses secrets
 
Apache solr andré bois-crettez 08
Apache solr   andré bois-crettez 08Apache solr   andré bois-crettez 08
Apache solr andré bois-crettez 08
 
Journées SQL Server 2012 Attentes et Performances
Journées SQL Server 2012   Attentes et PerformancesJournées SQL Server 2012   Attentes et Performances
Journées SQL Server 2012 Attentes et Performances
 
chap4.pdf
chap4.pdfchap4.pdf
chap4.pdf
 
BigData_Technologies_PL.pdf
BigData_Technologies_PL.pdfBigData_Technologies_PL.pdf
BigData_Technologies_PL.pdf
 

gestion MEMEMOIRE SYSTEME D EXPLOITATION

  • 1. Gestion de la mémoire Algorithme de remplacement Pr. My Driss LAANAOUI 1
  • 2. Revue • Quelle partie du matériel transforme les adresses logiques en adresses physiques? • Comment on appel l’événement quand une Trap est fait au SE parce qu’une page n’est pas en mémoire? • Quel problème est-ce que les tables de pages multiniveaux résoudrent? • Dans un Répertoire de page actives (RPA – TLB), quel genre de mémoire doit on avoir pour accélérer les recherches? • Pour un système avec une mémoire très, très grande, quelle est notre solution pour remplacer les tables de pages qui seraient effarantes? 2
  • 3. Plan • Pagination • Remplacement de pages • Algorithme LRU • Algorithme PAPS • Comparaison des algorithmes • Application • Segmentation • Principe • Application • Segmetation vs pagination • Solution hybride 3
  • 4. Introduction •On se rappel: la pagination suit un ensemble de règles: • Elle permet à un programme d’être chargé en mémoire une page à la fois • Il y a un genre de table qui identifie quelle page est chargée dans quel cadre • Quand une page est demandée et qu’elle n’est pas en mémoire physique, un défaut de page se produit • Le SE doit maintenant charger la page dans la mémoire. Si il n’y a pas de cadre libre, une page doit être évincée de la mémoire. Quelle page est choisit pour être évincée? 4
  • 5. Introduction 5 Exécution d’une défaut de page: va-et-vient plus en détail
  • 6. Introduction 6 Exécution d’une défaut de page: va-et-vient plus en détail
  • 7. Introduction Temps moyen d’accès à la mémoire Supposons que: • accès en mémoire: 100 nanosecs • temps de traitement de défaut de page: 25 millisecs = 25,000,000 nanosecs • p: probabilité de ne pas trouver une page en mémoire (défaut) (quantité entre 0 et 1) Alors Temps moyen d’accès mémoire: (1-p) x 100 + p x 25,000,000 (pas de défaut + défaut) 7
  • 8. Remplacement de pages • Quoi faire si un processus demande une nouvelle page et il n’y a pas de cadres libres en RAM? • Il faudra choisir une page déjà en mémoire principale, appartenant au même ou à un autre processus, qu’il est possible d ’enlever de la mémoire principale • la victime! • Un cadre de mémoire sera donc rendu disponible • Évidemment, plusieurs cadres de mémoire ne peuvent pas être "victimisé": • p.ex. cadres contenant le noyau du SE, tampons d ’E/S... 8
  • 9. Remplacement de pages •Choisir la victime de façon à minimiser le taux de défaut de pages •Page dont nous n`aurons pas besoin dans le futur? impossible à savoir! •Page pas souvent utilisée? •Page qui a été déjà longtemps en mémoire. 9
  • 10. Remplacement de pages •Les algorithmes de choix de pages à remplacer doivent être conçus de façon à minimiser le taux de défaut de pages à long terme. •Mais il ne peuvent pas impliquer des temps de système excessifs, p.ex. mise à jour de tableaux en mémoire pour chaque accès de mémoire. •Ni l`utilisation de matériel dispendieux. 10
  • 11. Remplacement de pages •Il existe un ensemble d’algorithmes qui peuvent être utilisés pour choisir quelle page va être la meilleure candidate pour l’éviction •Considérations: • Les pages qui vont avoir été modifié doivent être écrites sur le disque avant l’éviction • L’utilisation de l’information d’état tel que les bits d’utilisations (used) et de modifications (dirty) vont être utiles pour prendre cette décision • Ces algorithmes sont applicables à d’autres domaines de recherche: caches, serveurs Web, etc... 11
  • 12. Pagination Le principe de la pagination est simple (sa mise en œuvre, par contre, est assez complexe): l'espace d'adressage de chaque programme est partagé en blocs de taille fixe (des tailles de 4-16KB sont courantes), les pages, et seulement les pages en train d'être utilisées sont chargées en mémoire. Le restant de l'espace d'adressage est stocké sur le disque dur. Les adresses physiques des pages en mémoire sont stockées dans une page table. DD RAM Espace d'adressage 31 0 OS Page Table
  • 13. Pagination - Adressage Une adresse virtuelle est donc composée de deux parties: un numéro de page et un déplacement dans la page. Cette transformation, réalisée par le MMU, permet d'une part de travailler avec des espaces d'adressage plus grands que la mémoire physique, et d'autre part de référencer des données sur une même page avec peu de bits (ce qui permet l'utilisation de certains modes d'adressage). Numéro de page Déplacement Base 31 12 11 0 25 12 MMU Déplacement 11 0 Exemple: Largeur des adresses = 32bits Taille des pages = 4KB Taille de la mémoire = 64MB
  • 14. Pagination - Page faults Une adresse virtuelle peut donc référencer soit une page en mémoire (page hit) soit une page sur le disque dur (page miss). Si la page cherchée se trouve sur le disque dur, le MMU engendre une interruption (page fault) et une procédure se charge de transférer les données en mémoire (une opération qui demande plusieurs millions de cycles d'horloge). La taille des pages est un paramètre fondamentale dans la minimisation des page faults: une taille trop petite augmente le nombre de page miss, et une taille trop grande augmente la pénalité associé au transfert des données. Dans les systèmes actuels, la taille des pages varie entre 4 et 16KB.
  • 15. Pagination - Remplacement Lors qu'une nouvelle page est transférée du disque dur à la mémoire, il est parfois nécessaire d'en transférer une autre de la mémoire au disque dur (swap). Étant donné le "prix" très élevé d'un page fault, l'algorithme utilisé pour décider quelle page va être "swappée" est fondamental pour la performance d'un système. L'algorithme de choix pour cette opération est le LRU (least recently used). Si la mémoire est trop petite par rapport aux besoins d'un programme, ou si l'algorithme de swap n'est pas efficace ou si les données sont "mal" stockées, le phénomène appelé thrashing peut se produire: la machine passe tout son temps à transférer des pages et n'arrive pas à calculer.
  • 16. Le MMU doit trouver l'adresse de la page physique correspondant à une page virtuelle. Pour effectuer cette opération, il consulte un tableau de pages (page table), stocké en mémoire et géré par l'OS. Page table address register Pagination - Implémentation Numéro de page Déplacement Base 31 12 11 0 25 12 Déplacement 11 0 Exemple: Largeur des adresses = 32bits Taille des pages = 4KB Taille de la mémoire = 64MB VALID BIT PAGE TABLE
  • 17. Pagination - TLB Pendant l'exécution d'un programme, la même page est souvent référencée plusieurs fois de suite. Pour accélérer la recherche de l'adresse physique, on utilise un "raccourci" matériel: le TLB ou translation lookaside buffer (une petite table dans le processeur). Page table address register Numéro de page Déplacement Base Déplacement VALID BIT PAGE TABLE TLB
  • 18. Algorithme LRU •Ordre chronologique d’utilisation (LRU) •Remplace la page dont la dernière référence remonte au temps le plus lointain (le passé utilisé pour prédire le futur) • En raison de la localité des références, il s’agit de la page qui a le moins de chance d’être référencée • performance presque aussi bonne que l’algo. OPT 18
  • 20. Algorithme LRU • Chaque page peut être marquée (dans le descripteur dans la table de pages) du temps de la dernière référence: • besoin de matériel supplémentaire. • La page LRU est celle avec la + petite valeur de temps (nécessité d’une recherche à chaque défaut de page) • On pourrait penser à utiliser une liste de pages dans l’ordre d ’utilisation: perte de temps à maintenir et consulter cette liste (elle change à chaque référence de mémoire!) • D’autres algorithmes sont utilisés: • LRU approximations 20
  • 21. Algorithme PAPS •Premier arrivé, premier sortie PAPS (FIFO) • Facile à implémenter. Garde une liste de toutes les page en mémoire en ordre quelles sont arrivées • Sur un défaut de page, la page la plus vielle est enlevée et une nouvelle page est ajoutée à la fin de la liste • Avantage: Très facile à implémenter • Désavantage: Aucune façon de déterminer si la page qui est enlevée est en grande utilisation. L’âge peut être une indication mais n’est pas nécessairement la meilleure indication de l’utilisation d’une page. 21
  • 22. Algorithme PAPS •Logique: une page qui a été longtemps en mémoire a eu sa chance d ’exécuter •Les cadres forment conceptuellement un tampon circulaire, débutant à la plus vieille page • Lorsque la mémoire est pleine, la plus vieille page est remplacée. Donc: “first-in, first-out” •Simple à mettre en application • tampon consulté et mis à jour seulement aux défauts de pages... •Mais: Une page fréquemment utilisée est souvent la plus vielle, elle sera remplacée par FIFO! 22
  • 24. Algorithme PAPS •Les premières pages amenées en mémoire sont souvent utiles pendant toute l’exécution d’un processus! • variables globales, programme principal, etc. •Ce qui montre un problème avec notre façon de comparer les méthodes sur la base d ’une séquence aléatoire: • les références aux pages dans un programme réel ne seront pas vraiment aléatoires 24
  • 25. Application 25 On considère un système de pagination dont la taille est égale à 4KO, la mémoire physique est de 12 KO et le mot mémoire de 1 Octet. 1. Combien de cadres de pages contient cette mémoire? 2. Soit un programme de taille 24 KO, qui fait référence aux adresses logiques suivantes: 2,5012,6200,2000,17800,50,13248,5741,9442,16524,23580,16895,22630,123 a. Donner pour chaque adresse, le numéro de page et le déplacement dans la page (p,d) b.Déduire la chaine de pages référencées durant l’execution de ce programme 3. Calculer le taux de défaut de page résulté par un remplacement FIFO et LRU. Quel algorithme minimise ce taux?