Changes between Version 12 and Version 13 of replication_distribution


Ignore:
Timestamp:
Oct 12, 2016, 5:05:17 PM (6 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • replication_distribution

    v12 v13  
    66 * The read-only segments (type CODE) are replicated in all clusters where they are used.
    77 * The private  segments (type STACK) are placed in the same cluster as the thread using it.
    8  * The shared segments (types DATA, HEAP, etc ) are distributed on all clusters as regularly as possible to avoid contention.
    9  * The pinned segments (type REMOTE) are placed in the user-specified cluster.
     8 * The shared segments (types DATA, MMAP, MALLOC, etc ) are distributed on all clusters as regularly as possible to avoid contention.
     9 * The pinned segments (type REMOTE or FILE) are placed in the user-specified cluster.
    1010
    1111To actually control data placement on the physical memory banks, the kernel uses the paged virtual memory MMU.
    1212
    13 This policy is implemented by the Virtual Memory Manager (vmm.h / vmm.c files).
     13This policy is implemented by the Virtual Memory Manager (in the vmm.h / vmm.c files).
    1414
    15 A '''vseg''' is a contiguous memory zone in the process virtual space. It is always an integer number of pages. Depending on its type, a '''vseg''' has some specific attributes regarding access rights, replication policy, and distribution policy. The vseg descriptor is defined by the structure vseg_t (in vseg.h file).
     15A '''vseg''' is a contiguous memory zone in the process virtual space. It is always an integer number of pages. Depending on its type, a '''vseg''' has some specific attributes regarding access rights, replication policy, and distribution policy. The vseg descriptor is defined by the structure vseg_t in the vseg.h file.
    1616
    1717For each process P, the process descriptor is replicated in all clusters containing at least one thread of P (called active clusters). In each cluster K, the virtual memory manager VMM(P,K) is stored in the local process descriptor, and contains two main structures: VSL(P,K) is the list of all vsegs registered for process P in cluster K, and GPT(P,K) is the generic page table, defining the actual physical mapping of those vsegs on the distributed physical memory banks.