IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Besoin d'eclaircissement sur la MMU


Sujet :

Linux

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 115
    Points : 104
    Points
    104
    Par défaut Besoin d'eclaircissement sur la MMU
    Bonjour,

    En ce moment je m'interesse a la mmu et j'ai l'impression qu'il me manque un element.

    Partons du processeur, un arm par exemple on peut representer la chose ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
          ---------
    VA -> -  MMU  - -> PA
          ---------
    Maintenant cote Linux, nous avons deux processus, chacun a son espace virtuel en version simplifiee :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
               -------------
    0x00000000 -           -
               -------------
    0x00001000 -  .text    - start of user space
               -  ........ -
               -  ........ -
               -------------
    0xC0000000 -           -
               -           -
    0xFFFFFFFF -------------
    Je m'interesse ici a ma section .text qui est a l'adresse virtuelle 0x00001000.

    Quelle VA va etre donnee a la mmu de mon processeur ? En ayant deux processus, j'ai deux adresses virtuelles qui sont supposees pointer sur des adresses physiques differentes en fonction du contexte en l'occurence le pid.
    Qui va gerer ce contexte ? Linux ou la MMU du processeur ?

    N'y a-t-il pas des ambiguites sur les termes virtuelle et physique ? J'ai tendance a me dire que l'adresse virtuelle du processus n'a rien a voir avec celle en entree de la MMU et qu'il y a une couche intermediaire sur laquelle je ne trouve rien (peut etre parce qu'elle n'existe pas !)
    Et lorsque l'on parle d'adresse physique pour le noyau est-ce vraiment une adresse ou physique au sens materiel ou ne serait-ce pas la VA de la MMU ?

    Si quelqu'un peut m'eclairer, ce serait gentil. J'ai regarde dans des livres comme LDD ou Understanding the Linux Kernel mais j'ai l'impression qu'il manque un maillon ou alors je suis passe a cote de quelque chose. J'ai l'impression que Linux a sa propre MMU en lisant certains chapitre.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 115
    Points : 104
    Points
    104
    Par défaut
    Je vous fait un petit retour ayant trouve la reponse. En fait mon erreur venait de ma lecture sur la MMU pour l'archi ARM. Apres cette lecture je voyais la MMU comme un block relativement intelligent mais en fait il n'en n'ai rien !

    Le noyau s'occupe de tout gerer dont les tables de correspondance VA<->PA qui sont stockees en RAM. En plus de ces tables, il s'occupe de placer dans un registre (via le CP15 pour l'archi ARM, registre 2 je crois) l'adresse de la table de niveau 1. Du coup la MMU recupere cette adresse et recupere via les differents niveaux de table sa PA. De son cote Linux a pour chaque processus un ensemble de tables de correspondance et vu que c'est lui qui indique a la MMU l'addresse pas de soucis.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Besoin d'eclaircissements sur Qlikview
    Par diabbs dans le forum QlikView
    Réponses: 0
    Dernier message: 08/04/2013, 00h35
  2. besoin d'eclaircissement sur malloc et free
    Par Jackyzgood dans le forum C
    Réponses: 8
    Dernier message: 08/02/2010, 16h40
  3. Besoin d'eclaircissement sur la persistence
    Par willoi dans le forum Hibernate
    Réponses: 2
    Dernier message: 26/06/2007, 18h01
  4. besoins d'eclaircissements sur les dossiers cron.*
    Par rhaamo dans le forum Administration système
    Réponses: 5
    Dernier message: 23/02/2007, 11h38
  5. [CR] besoin d'aide sur les formules
    Par GuillaumeDSA dans le forum Formules
    Réponses: 4
    Dernier message: 10/07/2003, 12h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo