14. Paramètres de mémoire cache
• cache hit
– numéro de fois quand les données sont trouve en
la mémoire cache
• cache miss
– numéro de fois quand les données ne sont pas
trouve en la mémoire cache
• cache hit / cache miss
14
17. Adresse de mémoire
• Un numéro
• Dépend de nombre de bits
– 4 octets sur un CPU 32 bits
– 8 octets sur un CPU de 64 bits
• Adresse maximale
– 2n bytes
• n numéro de bits
17
18. Liaison d'adresse
• Processus de alloué a chaque variable et
fonction une adresse de mémoire
• Qui fait ca
– compilateur
• fichier .com
– chargeur de program
• fichier exécutable avec de code transférable
(relogeable)
18
21. Espace d’adressage
• Toutes les adresses de mémoire disponible
pour un processus
– Ne doit pas nécessairement de commencer a 0
21
22. Système idéale
22
• chaque processus a sa
partie de la mémoire
• Un processus peut
accéder seulement sa
partie de la mémoire
• L’espace de noyau (SE)
doit être protégé
• Quel est l’espace
d’adressage?
23. Modes de fonctionnements (x86)
• Real Mode
– L’espace d’adressage c’est tout la mémoire
– sans protection
• Protected Mode
– L’espace d’adressage est limite par le CPU (MMU)
– Protection disponible
23
24. Protection de la mémoire
• Memory Management Unit (MMU)
– Adresse physique (après MMU)
– Adresse logique (avant MMU)
• Possibilités
– Allocation contiguë
– Segmentation
– Pagination
24
27. Mémoire Contiguë
• Simple de implémenter
• Estimation de taille
pour chaque processus
• Fragmentation
– C’est possible de n’avoir
pas de l’espace
27
30. Algorithmes d’allocation
• First Fit
– Premier espace disponible
• Best Fit
– L’espace disponible plus petite
• Worst Fit
– L’espace disponible plus grande
30
31. Fragmentation
• nous avons de la mémoire disponible mais pas
dans un seul espace contigu
– solution: défragmentation
31
33. Segmentation
• La vue mémoire du programmeur
• Le mémoire est partage en de segments
– base
– limite
– information de protection
• Peut se chevaucher (overlap)
33
34. Adresse de mémoire (segmentation)
• sélecteur
– numéro de segment
• décalage (offset)
– adresse a l’ intérieur de segment
• Adresse
– adresse physique = segment_base (sélecteur) +
décalage
– décalage <= segment_limit (sélecteur)
34
39. Fragmentation
• Externe
– nous avons de la mémoire disponible pour un
segment mais pas dans un seul espace contigu
• solution: défragmentation, segments plus petit
• Interne
– le processus a assez de mémoire pour allouer mais
pas contigu
39
41. Pagination
• La mémoire est divise en pages
– en général 4 KB
• Pages
– Virtuelles (pages)
– Physique (cadres - frames)
• Tableau de pages
– un processus a un tableau de pages
• Adresse
– adresse physique = page index + décalage
41