// the project
About MayteraOS.
MayteraOS is a custom x86-64 operating system, written from scratch for the love of it: no Linux, no BSD underneath. Just a UEFI bootloader, a freestanding C kernel, a windowed desktop, an AI assistant, and its own compatibility layers for software from other eras.
What it is
MayteraOS boots via UEFI (BOOTX64.EFI), runs a Ring 0 freestanding C/assembly
kernel, and launches Ring 3 user processes via SYSCALL/SYSRET. On
top of that sits a user-mode compositor that draws a CDE/Motif desktop, a from-scratch
TCP/IP and TLS stack, a read/write ext2 root filesystem, and a set of native apps.
Its two defining ideas are an AI integrated at the OS level, able to drive and (safely) reprogram the system, and broad compatibility with software from other platforms: real Windows 3.1 / Win16 programs, DOS software and DOOM.
The technology
- Architecture
- x86-64 (long mode)
- Boot
- UEFI: BOOTX64.EFI loads an ELF kernel from a FAT32 ESP
- Kernel
- Freestanding C, Rust and assembly, no libc, Ring 0
- Userland
- Ring 3 ELF programs via SYSCALL/SYSRET
- Memory
- Identity-mapped paging, PMM / VMM / heap, demand paging
- Scheduling
- Preemptive processes + cross-core SMP, on by default, verified stable at 1, 2, 4, 8 and 16 cores (tested on hosts with up to 80 physical cores), with the kernel's single global lock narrowed piece by piece
- Graphics
- Framebuffer compositor, TrueType, BMP / PNG / JPEG
- Network
- TCP/IP, DHCP, DNS, TLS 1.2 + 1.3, HTTP/1.1 + HTTP/2, SMB + NFS shares
- Remote
- SSH-2 client & server (RSA, curve25519)
- Filesystems
- ext2 (read/write root) · FAT32/VFAT (ESP)
- Drivers
- PS/2, PCI, ATA/AHCI, e1000 / virtio / rtl8139, HD Audio, USB (xHCI: Mass Storage, HID, Audio Class)
- AI
- OS-wide assistant over a YAML tool-contract, capability-token and audit protocol
- Compatibility
- Windows 3.x (NE) + 16-bit OLE2/COM, DOS, DOOM (bring your own software and DOOM.WAD)
- License
- GPLv2-or-later, source on GitHub
How it is built
The kernel is a freestanding build (-ffreestanding -nostdlib -mcmodel=kernel),
compiled and tested on a build host and deployed to UEFI virtual machines. User apps build
against a freestanding libc and link as Ring 3 ELF programs.
The kernel is being incrementally rewritten in Rust, subsystem by subsystem, and Rust is now the default for new kernel code. Each ported subsystem is folded in behind a build flag with the original kept alongside it, so a port can be reverted in one line and both implementations can be run against the same inputs and compared. Parsers that handle untrusted input are audited with differential fuzzing and AddressSanitizer harnesses; whatever those surface is fixed at the source and published on the security advisories page. The Rust in the kernel is written for this project rather than adopted from third-party crates.
Every change is recorded in the project changelog. The source tree is tracked in git, with every build stamped with the exact commit it was built from, so any shipped image can be traced back to the source that produced it.
Credits & attribution
MayteraOS is an independent operating system. Where it uses third-party assets, they are credited here.
Icons
Desktop, Start-menu and system-tray icons are drawn primarily from
CoreUI Icons Free and
Boxicons, both distributed
under the Creative Commons Attribution (CC BY 4.0) license. A small number of
icons predate this set and were originally sourced from
SVG Repo, also under CC BY. All were
recolored and rendered to the internal MICO (.ICN) icon format used by the
compositor; underlying path geometry is unmodified.
Fonts
This website uses Space Grotesk (Florian Karsten, SIL Open Font License) and IBM Plex Sans / IBM Plex Mono (IBM, SIL Open Font License).
Ported software
DOOM is id Software's own engine source, used under id's DOOM Source Code License (not the GPL); the per-file id Software notices are kept intact in the source. It runs here through a native platform layer, distributed through the App Store rather than as repository source, and no game data (DOOM.WAD) is included. Windows 3.1 / Win16 and DOS programs run through MayteraOS's own compatibility layers and are the property of their respective authors; none are included or distributed with MayteraOS. The Python interpreter the desktop launches is a MicroPython port (MIT license), with a smaller original hand-written subset interpreter also in the source tree. There is no CPython port in the current public repository.
Desktop pet
The “sheep” desktop pet is drawn by the compositor; the project also supports an optional sprite sheet. The procedural form embeds no third-party artwork.