Changes between Version 31 and Version 32 of replication_distribution


Ignore:
Timestamp:
Sep 20, 2017, 2:09:28 PM (7 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • replication_distribution

    v31 v32  
    6565
    6666=== The ''heap'' zone ===
    67 It is located on top of the ''elf'' zone, and starts at address defined by the CONFIG_VSPACE_HEAP_BASE  parameter. It contains all vsegs dynamically allocated or released  by the mmap() / munmap() system calls (i.e. FILE / ANON / REMOTE).he VMM implements a specific MMAP allocator for this zone, implementing the ''buddy'' algorithm.
     67It is located on top of the ''elf'' zone, and starts at address defined by the CONFIG_VSPACE_HEAP_BASE  parameter. It contains all vsegs dynamically allocated or released  by the mmap() / munmap() system calls (i.e. FILE / ANON / REMOTE).he VMM implements a specific MMAP allocator for this zone, implementing the ''buddy'' algorithm. The user level ''malloc'' library uses the mmap() system call to allocate virtual memory in the heap. Besides the standard malloc() / free() functions, it implement a non-standard remote_malloc() function, that allows the user to map a dynamically allocated user buffer on a specific physical cluster.
    6868
    6969=== The ''stack'' zone ===
    7070It 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. As threads are dynamically created and destroyed, the VMM implement a specific STACK allocator for this zone, using a bitmap vector.
    71