Skip to content

tsatke/devos

Repository files navigation

DevOS

project chat build

An operating system and kernel developed with the Rust programming language.

RequirementsFeaturesBuild and Run

Requirements

  • QEMU (for running and testing the kernel)
  • rustup
  • cc (probably already available on your system)
  • mke2fs for now

With those installed, you can simply run cargo build to build an image. If you also have QEMU installed, cargo run and cargo test also will work.

Features

  • Heap
  • Syscalls
  • Drivers
    • PCI driver
    • IDE driver (no ATA)
    • VGA
    • xHCI
    • USB
    • NVMe
    • Networking
  • Virtual File System with EXT2 implementation
  • Preemptive multitasking (processes & threads)
  • Interactive shell
  • Test framework

Build and Run

To run the kernel in QEMU

cargo run

Running tests

To run tests with QEMU, run

cargo test

This will run kernel unit tests, as well as all test_kernels.

Debugging

To debug the kernel in QEMU, run

cargo run -- --debug

and then connect to the QEMU instance with lldb:

lldb -s debug.lldb