Crate os

source ·
Expand description

The main module and entrypoint

Various facilities of the kernels are implemented as submodules. The most important ones are:

  • trap: Handles all cases of switching from userspace to the kernel
  • syscall: System call handling and implementation

The operating system also starts in this module. Kernel code starts executing from entry.asm, after which rust_main() is called to initialize various pieces of functionality. (See its source code for details.)

We then call batch::run_next_app() and for the first time go to userspace.

Modules

  • batch subsystem
  • console 🔒
    SBI console driver, for text output
  • lang_items 🔒
    The panic handler
  • logging 🔒
  • sbi 🔒
    SBI call wrappers
  • sync 🔒
    Synchronization and interior mutability primitives
  • Implementation of syscalls
  • Trap handling functionality

Macros

Functions