sid-agrawal / OSmosis

1 stars 0 forks source link

Catching Up #62

Closed sid-agrawal closed 1 week ago

sid-agrawal commented 3 months ago

Impl Things that Sid Needs to understand

  1. Protobuf stuff setup/working.
  2. Message Queues
  3. All Test Cases
  4. Performance Runs
  5. Cap Tracking
  6. Cap Exchange
  7. Model State tracking

Creating and deleting resource servers

Infra Pieces

Basic Types

Diff between VMR and MO

/**
 * Resource type is either:
 * - Core type: one of the enum values defined for GPICAP_CORE_TYPE
 * - Dynamic type: dynamic value assigned by alloc_new_resource_type
*/
typedef enum GPICAP_CORE_TYPE
{
    // Core cap types
    GPICAP_TYPE_NONE = 0,
    GPICAP_TYPE_ADS,    ///< An address space
    GPICAP_TYPE_VMR,    ///< A virtual memory region
    GPICAP_TYPE_MO,     ///< A memory object
    GPICAP_TYPE_CPU,    ///< A CPU object, currently primarily a TCB
    GPICAP_TYPE_PCPU,   ///< Physical CPU core
    GPICAP_TYPE_PD,     ///< A PD
    GPICAP_TYPE_EP,     ///< An endpoint, this is not an actual OSmosis model resource type
    GPICAP_TYPE_RESSPC, ///< A resource space
    GPICAP_TYPE_seL4,   ///< An seL4 kernel object
} gpi_cap_t;

Resource Space Boot Strap Code

How is RS different from Component in the impls

How is RT Talking to various PD

Protobuf

Message Queues

Runtime Changes

Scenarios

VMM Scenario

Container Scenario

High Jump Scenario