Table of Contents

  1. Introduction
  2. Architecture
  3. Building
    1. Toolchain
    2. Building script
    3. Reference project repository
  4. Running system on targets
    1. Running system on armv7m4-stm32l4x6 (ST STM32L4x)
    2. Running system on armv7m7-imxrt105x (NXP i.MX RT105x)
    3. Running system on armv7m7-imxrt106x (NXP i.MX RT106x)
    4. Running system on armv7m7-imxrt117x (NXP i.MX RT117x)
    5. Running system on armv7a7-imx6ull (NXP i.MX 6ULL)
    6. Running system on armv7a9-zynq7000 (Xilinx Zynq 7000)
    7. Running system on ia32-generic
    8. Running system on riscv64-virt
    9. Running system on riscv64-spike
  5. Loader
    1. Architecture
    2. Command-line interface
  6. Kernel
    1. HAL
      1. HAL layer for ARMv7 Cortex-M based based targets
      2. HAL layer for ARMv7 Cortex-A based based targets
      3. HAL layer for IA32 based targets
      4. HAL layer for RISC-V 64 based targets
    2. Processes and threads
      1. Processes creation
      2. Synchronization primitives
      3. Message passing
      4. Namespace
    3. Memory management
      1. Page allocator
      2. Memory mapper
      3. Zone allocator
      4. Fine-grained allocator
      5. Memory objects
    4. System calls
      1. Debug (1)
      2. Memory management (5)
      3. Processes management (13)
      4. Threads management (7)
      5. Threads synchronization (8)
      6. Inter-process communication (12)
      7. File operations (23)
      8. Socket operations (13)
      9. Interrupts management (1)
      10. Performance monitoring (3)
      11. Time management (2)
      12. Platform management (4)
      13. RISC-V specific (2)
    5. Common routines
  7. Standard library
    1. Functions
    2. POSIX emulation server
  8. Device drivers
    1. Device server interface
    2. Accessing hardware
    3. Handling interrupts
  9. Filesystem servers
  10. Network stack
  11. USB stack
    1. USB Host stack
    2. libusb
  12. Utilities
    1. psh
    2. psd
  13. Host utilities
    1. psdisk
    2. psu
    3. phoenixd
  14. Libraries
    1. libcgi
    2. libvirtio
    3. libvga
    4. libgraph
  15. Ports
  16. Tests and testing process
  17. Coding convention