Changes between Version 26 and Version 27 of replication_distribution
- Timestamp:
- Jan 17, 2017, 11:20:24 AM (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
replication_distribution
v26 v27 19 19 * the GPT(P,K) is the generic page table, defining the actual physical mapping of those vsegs. 20 20 21 == 1) User segments types and attributes==21 == __1) User segments types and attributes__ == 22 22 23 23 * A vseg is '''public''' when it can be accessed by any thread T of the process, whatever the cluster running the thread T. It is '''private''' when it can only be accessed by the threads running in the cluster containing the physical memory bank where this vseg is mapped. A '''private''' vseg is entirely mapped in one single cluster K. … … 51 51 When a given vseg or a given entry in the page table must be removed by the kernel, this modification must be done first in the reference cluster, and broadcasted to all other clusters for update. 52 52 53 == 2) User process virtual space organisation==53 == __2) User process virtual space organisation__ == 54 54 55 55 The virtual space of an user process P in a given cluster K is split in 5 fixed size zones, defined by configuration parameters. Each zone contains one or several vsegs, as described below. … … 69 69 === The ''stack'' zone === 70 70 It is located on top of the ''mmap'' zone and starts at address defined by the CONFIG_VSPACE_STACK_BASE parameter. It contains an array of fixed size slots, and each slot contain one ''stack'' vseg. The size of a slot is defined by the CONFIG_VSPACE_STACK_SIZE. In each slot the first page is not mapped to detect stack overflow. 71 As threads can be dynamically created and destroyed, the VMM implement a specific STACK allocator for this zone, using a bitmap vector.71 As threads are dynamically created and destroyed, the VMM implement a specific STACK allocator for this zone, using a bitmap vector.