Module 7 | Mémoire virtuelle

Ce module introduit la mémoire virtuelle qui permet d’exécuter des programmes dont la taille dépasse la taille de la mémoire principale.  La mémoire virtuelle et la mémoire principale sont structurées en unités d’allocations. Ces unités sont appelées des pages dans le cas de la mémoire virtuelle et des cadres dans le cas de la mémoire principale.

Dans ce module, nous allons aborder le principe de la pagination, les algorithmes d’accès à la mémoire, et l’unité de gestion de la mémoire. Nous terminerons ce module par présenter le principe de segmentation.

À la fin de ce module, vous devriez être capable de :

  1. Expliciter le principe de la pagination dans la mémoire virtuelle.
  2. Distinguer les algorithmes d’accès à la mémoire.
  3. Expliciter le principe de segmentation.

Texte de référence

Commencez la lecture du texte de référence

Précision :

Si vous avez de la difficulté à comprendre certains éléments ou aspects du texte, communiquez avec le professeur. Il vous fournira des explications ou des exemples selon le cas. N’hésitez pas également à poser vos questions sur le forum du cours.

Capsules vidéos (facultatif)

Pour en savoir davantage, je vous invite à visionner ces capsules vidéos :

Exemples d’exercices corrigés

Consultez ces exemples d’exercices avec solutions.

Quiz noté

Les Quiz vous permettent d’évaluer votre apprentissage de la matière. Ces quiz prennent la forme de questions à choix multiples. En plus de vous permettre de vérifier vos réponses, ils fournissent également, pour certaines questions, une courte explication de la réponse.

Débutez le quiz

Travail noté

Attention! Le cours comprend quelques consignes simples pour la remise des travaux ainsi que quelques rappels importants sont évoqués dans la section Présentation (dans la sous-section Évaluation des apprentissages_ Remise des évaluations) de la rubrique À propos du cours. Prenez le temps de les lire attentivement.

Cette activité notée compte pour 10 % de la note globale.

Exercice 1 :

Si le temps d’accès au cache est de 10 ns, le temps de pénalité au cache est de 15 ns, et que le temps d’échec du cache est de 3 fois le temps de pénalité au cache. On considère un taux d’échec de 10%. Calculez le temps de récupération d’une instruction.

Exercice 2 :

Supposons que la mémoire physique d’un ordinateur est découpée en 8 pages (de 0 à 7) de 512 octets. C’est-à-dire, la mémoire physique fait 4 Ko (512 $ imes$ 8 = 4 Ko). Supposons qu’un processus a un espace virtuel de 5 Ko et fait successivement référence à cette sélection d’adresses virtuelles: 300, 511, 512, 1025, 4096, 5000, 3500, 2047, 2049, 6000. Trouvez pour chaque adresse virtuelle, le numéro de page virtuelle et le déplacement?

Exercice 3 :

Calculez le nombre d’entrées dans une table de pages si nous utilisons un adressage virtuel sur 32 bits, 64 bits, et 128 bits respectivement et que la taille d’une page est de 4 Ko.

Exercice 4 :

Quel doit être la largeur du bus d’adresse dans le cas d’un processeur qui utilise un adressage de 4 Go de mémoire, avec 8 Ko de mémoire cache et des mots mémoires de 32 bits.