Architecture

Drivers

Platform and device driver architecture

SlopOS targets QEMU q35 first and expects modern interrupt delivery.

Platform baseline

FeatureRole
ACPI tablesDiscover CPUs, interrupt controllers, HPET, and PCIe configuration
HPETHigh-precision reference clock and time source
LAPICPer-CPU interrupt controller, timer, and IPIs
IOAPICPlatform interrupt routing
MSI/MSI-XPreferred PCI device interrupt delivery
PCIe ECAMPCI configuration access

Timer model

HPET plus LAPIC timer are the primary timing stack:

  • HPET is used for high-precision time and timer calibration.
  • LAPIC timer provides periodic scheduler ticks and one-shot wake deadlines.
  • PIT is only a legacy polled fallback for calibration. It is not initialized as a periodic IRQ source and does not drive scheduling.

Device families

FamilyStatus
VirtIO blockRoot and test disk images
VirtIO netNetwork device, RX/TX queues, interrupt handling, zero-copy hooks
PCIDevice discovery and capability parsing
PS/2 inputKeyboard and mouse input
SerialEarly and runtime logging
TTY/PTYTerminal line discipline, sessions, job control

Interrupt constraints

Legacy PIC code is not the supported interrupt path. VirtIO devices are attached with legacy mode disabled; device probe expects MSI-X or MSI. IOAPIC is required for platform interrupts that are not MSI/MSI-X.

On this page