Skip to main content

Welcome

This is the official documentation for SlopOS, a from-scratch x86_64 operating system written in Rust. Whether you want to run it, understand its internals, or contribute - you’re in the right place.

Documentation Overview

The Quickstart guide covers prerequisites, building from source, and running SlopOS in QEMU. You’ll need Rust nightly, QEMU, and a few standard tools.
SlopOS is organized into subsystems:
  • boot/ - GDT, IDT, TSS, early init, SYSCALL MSRs
  • mm/ - Physical frames, virtual memory, ELF loader
  • core/ - Scheduler, syscall handlers, task management
  • drivers/ - PIT, PS/2, IOAPIC, VirtIO, PCI
  • video/ - Framebuffer, graphics primitives
  • fs/ - ext2 filesystem implementation
Ring 3 applications include:
  • Shell - Command-line interface
  • Compositor - Window management
  • Roulette - The Wheel of Fate interface
  • File Manager - ext2 file browser
The lore/ directory contains the sacred chronicles of SlopOS development. Start with GENESIS.md to understand the epic tale of three kernel wizards shipwrecked on Sloptopia.

Key Concepts

W/L Currency

Every operation is a gamble. Successful ops award W’s, failures cost L’s. The scheduler tracks your balance.

Wheel of Fate

Boot outcomes are determined by the Wheel. Win the spin, enter the shell. Lose, reboot and try again.

IOAPIC Required

SlopOS requires LAPIC + IOAPIC. The legacy 8259 PIC has been sacrificed to the Wheel.

no_std Rust

All kernel code is #![no_std] with #![forbid(unsafe_op_in_unsafe_fn)]. Unsafe blocks are minimal and documented.

Contributing

SlopOS welcomes contributions. Check the AGENTS.md file for coding guidelines, commit conventions, and the lore system requirements.
All changes must integrate with the W/L Currency System and respect the sacred lore. Read the chronicles before contributing.