Skip to content
  • Colin Finck's avatar
    Centrally handle environment properties and prepare support for multi-kernel... · 66393423
    Colin Finck authored
    Centrally handle environment properties and prepare support for multi-kernel mode side-by-side to Linux.
    
    * Introduce an "environment" module to centrally determine and provide information about the environment.
      This currently includes unikernel vs. multi-kernel, whether uhyve is used, and whether proxy is used.
      It also centrally parses the command-line.
    
    * Move all SyscallInterface implementations along with their proxy/uhyve-specific functions to a subfolder
      "librs/syscalls/interfaces".
      Rename SingleKernel to Generic to disambiguate it from other single-kernel modes.
    
    * Fix running HermitCore Rust in unikernel mode when network initialization failed or "proxy" is not used.
    
    * Handle multi-kernel mode wherever required.
      We currently lack init_mmnif_netif() on the lwIP side to initialize the mmnif network interface for multi-kernel mode.
    
    * Add a kernel_message_buffer module compatible to the C implementation.
      Don't initialize a serial port and output all kernel messages to this buffer when multi-kernel mode is detected.
    
    * Add information about the "vga" feature to Cargo.toml to make it actually possible to build with VGA support.
      This is still disabled by default.
    66393423