Changeset 672 for trunk/kernel/mm/kcm.h


Ignore:
Timestamp:
Nov 19, 2020, 11:49:01 PM (3 years ago)
Author:
alain
Message:

1) Introduce up to 4 command lines arguments in the KSH "load" command.
These arguments are transfered to the user process through the
argc/argv mechanism, using the user space "args" vseg.

2) Introduce the named and anonymous "pipes", for inter-process communication
through the pipe() and mkfifo() syscalls.

3) Introduce the "chat" application to validate the two above mechanisms.

4) Improve printk() and assert() fonctions in printk.c.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/mm/kcm.h

    r657 r672  
    22 * kcm.h - Kernel Cache Manager definition.
    33 *
    4  * Authors    Alain Greiner (2016,2017,2018,2019)
     4 * Authors    Alain Greiner (2016,2017,2018,2019,2020)
    55 *
    66 * Copyright (c) UPMC Sorbonne Universites
     
    5858        list_entry_t         active_root;      /*! root of active pages list               */
    5959
    60         uint32_t             full_pages_nr;    /*! number of busy pages                    */
     60        uint32_t             full_pages_nr;    /*! number of full pages                    */
    6161        uint32_t             active_pages_nr;  /*! number of active pages                  */
    6262
     
    6969/****************************************************************************************
    7070 * This structure defines a KCM-page descriptor.
    71  * A KCM-page contains at most (CONFIG_PPM_PAGE_SIZE / CONFIG_KCM_SLOT_SIZE) slots,
    72  * and each slot contains one block. The kcm page descriptor is stored in first slot.
     71 * A KCM-page contains (CONFIG_PPM_PAGE_SIZE / block_size) slots.
     72 * Each slot contains one block, but the kcm page descriptor is stored in first slot.
    7373 * The current allocation status is defined by the 64 bits "status" bit vector: each
    74  * non zero bit defines an allocated block / "counts is the number of allocated blocks.
    75  * Each kcm_page is registered in one of the two following page_list:
     74 * non zero bit defines an allocated block / "count" is the number of allocated blocks.
     75 * Each kcm_page is registered in one of the two following lists, rooted in the kcm:
    7676 * - full   : when count == max
    7777 * - active : count < max
     
    148148
    149149/****************************************************************************************
    150  * This debug function can be called by any thread running in any cluster.
    151  * It diplays on TXT0 the current state of a local KCM allocator.
     150 * This debug function can be called by any thread running in any cluster. It displays
     151 * on TXT0 the state of a KCM, identified by the <kcm_cxy> & <kcm_ptr> arguments.
    152152 ****************************************************************************************
    153153 * @ kcm_cxy : remote KCM cluster identifier.
Note: See TracChangeset for help on using the changeset viewer.