[SOS] Paging !!!

LfvrChris at aol.com LfvrChris at aol.com
Jeu 6 Jan 20:18:03 CET 2005


Bonsoir,
 
    J'ai remarqué une chose bizarre dans les sources  concernant la fonction 
paging_setup_map_helper() ainsi que la  fonction sos_paging_map(). Dans la 
première on remarque bien  que lorsque l'entrée dans la PDE n'existe pas, on 
alloue une nouvelle PTE et on  l'initialise en utilisant la fonction memset(). 
Dans la seconde  on remarque que lorsque l'entrée dans la PDE n'existe pas, on 
alloue bien une  nouvelle PTE mais on reset PT qui est un pointeur construit à 
partir du  mirroring.
 
    La nouvelle PTE est issue de la fonction  sos_physmem_ref_physpage_new()
 
    Est-ce logique ?
 
    Ne vaudrait-il pas plutôt utiliser la fonction  memset() sur la nouvelle 
page que nous venons de créer, c'est à  dire sur la nouvelle PTE, d'autant 
plus que l'on réalise une initialisation sur  toute une page soit 4096 octets ?
 
    Pouvez-vous m'expliquer le lien entre le pointeur  PT construit à partir 
du mirroring et la nouvelle PTE créée lorsque l'entrée  n'est pas présente 
dans la PDE ?
 
    La difference est-elle due à l'identity mapping  utilisée au départ, car 
à ce moment là il y a correspondance entre les adresses  virtuelles et les 
adresses physiques ?
 
    Merci par avance.
 
Krys
 
 
 
-------------- section suivante --------------
Une pièce jointe HTML a été enlevée...
URL: http://the-doors.enix.org/pipermail/sos/attachments/20050106/c66617af/attachment.html


Plus d'informations sur la liste de diffusion Sos