Changes between Version 12 and Version 13 of page_tables


Ignore:
Timestamp:
Sep 17, 2018, 3:56:24 PM (6 years ago)
Author:
phan
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • page_tables

    v12 v13  
    9595This vseg type is destroyed on munmap() call, using a two-RPCs mechanism just as for the creation.
    9696
    97 == __4) Introduction d’une entrée dans une table des pages__ ==
     97== __4) Insertion of an entry in the pages table__ ==
    9898
    99 L’ajout d’une entrée dans une PT(P,K), pour un processus P dans un cluster K est la conséquence d’un défaut de page
    100 causé par n’importe quel thread du processus P s’exécutant dans le cluster K, sur le principe du “on-demand paging”.
    101 Tous les threads d’un processus P placés dans un cluster K utilisent exclusivement la PT(P,K) locale, et reportent
    102 le défaut de page  à l’instance locale du noyau. Le traitement du défaut de page dépend du type du segment :
     99Adding a new entry in a PT(P,K) for a process P in a cluster K is the result of a page fault, triggered by any thread of process P
     100running in cluster K, based on the "on-demand paging" principle.
     101All threads of a P process in a K cluster use exclusively the local PT(P,K), and report the page fault to the local kernel instance.
     102The handling of the page fault depends on the segment type :
    103103
    104104=== 4.1) CODE ===
    105 Il existe un vseg de ce type dans la VSL de tous les clusters contenant au moins un thread du processus P.
    106 Si le cluster K qui détecte le défaut de page est différent du cluster propriétaire du processus Z, le noyau du cluster K doit allouer
    107 une page physique dans le cluster K. Pour initialiser cette page, il envoie une PT_MISS_RPC au cluster Z propriétaire du processus.
    108 Quand il obtient  le PTE stocké dans la PT(P,Z), il effectue un remote_memcpy() pour copier le contenu de la page physique
    109 du cluster Z vers la page physique du cluster K. Il termine en introduisant le PTE manquant dans la PT(P,K).
    110 Si le cluster K est le cluster propriétaire de Z, il alloue une page physique, initialise cette page en s’adressant au système de fichier,
    111 pour récupérer le contenu de la page manquante dans le cache du fichier .elf, et met à jour la PT(P,Z).
     105There is a CODE vseg in the VSL of all the clusters having at least one thread of process P.
     106If the K cluster that detected the page fault is different from the Z cluster owner of P, the kernel of cluster K has to allocate a physical page in cluster K.
     107To initialize this page, it sends a PT_MISS_RPC to cluster Z, owner of P.
     108When it gets the PTE stored in PT(P,Z), it does a remote_memcpy() to copy the contents of physical page in cluster Z to the physical page of cluster K.
     109It then ends with inserting the missing PTE to the PT(P,K).
     110IF cluster K is the owner cluster, it allocates a physical page, initializes this page by addressing the file system to retrieve the content of the missing page in the .elf file cache,
     111then updates the PT(P,Z).
    112112
    113113QUESTION : dans le cluster propriétaire Z, faut-il faire une copie de la page du cache de fichier vers une autre page physique ? [AG]