Ignore:
Timestamp:
Jun 26, 2019, 11:42:37 AM (5 years ago)
Author:
alain
Message:

This version is a major evolution: The physical memory allocators,
defined in the kmem.c, ppm.c, and kcm.c files have been modified
to support remote accesses. The RPCs that were previously user
to allocate physical memory in a remote cluster have been removed.
This has been done to cure a dead-lock in case of concurrent page-faults.

This version 2.2 has been tested on a (4 clusters / 2 cores per cluster)
TSAR architecture, for both the "sort" and the "fft" applications.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/libk/elf.c

    r625 r635  
    22 * elf.c - elf parser: find and map process CODE and DATA segments
    33 *
    4  * Authors   Alain Greiner    (2016)
     4 * Authors   Alain Greiner    (2016,2017,2018,2019)
    55 *
    66 * Copyright (c) UPMC Sorbonne Universites
     
    201201printk("\n[%s] thread[%x,%x] found %s vseg / base %x / size %x\n"
    202202"  file_size %x / file_offset %x / mapper_xp %l / cycle %d\n",
    203 __FUNCTION__ , this->process_pid, this->trdid,
     203__FUNCTION__ , this->process->pid, this->trdid,
    204204vseg_type_str(vseg->type) , vseg->min , vseg->max - vseg->min ,
    205 vseg->file_size , vseg->file_offset , vseg->mapper_xp );
     205vseg->file_size , vseg->file_offset , vseg->mapper_xp, cycle );
    206206#endif
    207207
     
    262262
    263263        // allocate memory for segment descriptors array
    264         req.type  = KMEM_GENERIC;
    265         req.size  = segs_size;
     264        req.type  = KMEM_KCM;
     265        req.order = bits_log2(segs_size);
    266266        req.flags = AF_KERNEL;
    267267        segs_base = kmem_alloc( &req );
Note: See TracChangeset for help on using the changeset viewer.