About PactorOS
What is PactorOS?
PactorOS is a minimal, open-source operating system designed specifically for embedded applications on the Raspberry Pi 5 and x86-64 platforms. Built from the ground up with LLVM, PactorOS prioritizes simplicity, performance, and determinism over feature bloat.
PactorOS is not a general-purpose Linux distribution. It is a purpose-built embedded OS that gives you direct hardware control with minimal overhead.
Architecture
Supported Platforms
| x86-64 | Standard PC/UEFI systems, virtualization (QEMU, VirtualBox, VMware) |
|---|---|
| ARM64 | Raspberry Pi 5 (Cortex-A76), other BCM2712-based boards |
Kernel Design
- Microkernel architecture with minimal privileged code
- Single address space for embedded determinism (optional MPU isolation)
- Zero-copy IPC via shared memory regions
- Tickless scheduler with priority-based preemptive multitasking
- Direct hardware access — no HAL abstraction layer
Design Philosophy
- No bloat. Every byte in the image serves a purpose. The base ARM64 image is under 32 MB.
- Pure LLVM. The entire system — bootloader, kernel, userspace — compiles with a single LLVM toolchain. No GCC dependency.
- Embedded-first. Real-time constraints, deterministic memory allocation, and bare-metal GPIO/SPI/I2C access are first-class features.
- Readable source. The codebase is intentionally small enough for one person to read and understand completely.
- No systemd. Init is a single-process supervisor. Services are plain executables.
Technical Specifications
| Bootloader | Custom EFI stub (x86-64) / U-Boot + custom second-stage (ARM64) |
|---|---|
| Kernel | Monolithic with loadable modules, ELF binary format |
| Filesystem | Read-only squashfs root + tmpfs overlay; optional ext4 data partition |
| Syscalls | 42 system calls (subset of Linux ABI for compatibility) |
| Networking | lwIP userspace stack, optional; no kernel networking by default |
| Toolchain | LLVM 17+ / clang, lld, compiler-rt, libc++ |
| C Library | musl libc (statically linked) |
| Init | pactor-init: single PID 1 supervisor |
| Shell | pactor-sh: minimal POSIX shell (2k LOC) |
| License | BSD 2-Clause |
Source Code
The source is available in the repository. Contributions are welcome via patches sent to the mailing list.
git clone https://pactoros.hu/repo pactoros-src
Contact
| Mailing List | dev@pactoros.hu |
|---|---|
| IRC | #pactoros on Libera.Chat |
| Bug Reports | Send patches to the mailing list |