nat-os
CART
From-scratch systems programming

nat-os

AN OPERATING SYSTEM WRITTEN FROM SCRATCH — FOR THE ESP32
Preemptive schedulingBytecode VMSoftware isolationILI9341 + DMAXPT2046 touchFlash persistencemicroSDSAR ADCI²CLEDC audio802.11 receive

No ESP-IDF · No Arduino · No FreeRTOS · No C library. The kernel owns scheduling, memory, drivers and application execution. Every instruction from the image entry point onward is project code. 37,248 bytes shipped; ~145 KB left for apps.

Used Medias LLC · Embedded Systems Division
3D VIEW — LIVE
LIVE — kernel/raycast.c · 240×224 · 1 ray/col
LAUNCHER
Launcher
SHELL
On-screen shell
No MMU. No debugger. No excuses.
Screens are reconstructions from kernel data — not photos. os_screens.py
390
pages
35
opcodes
0
escapes
40
reports

FEATURED — PAY IN USD OR $USED

VIEW ALL →
CYD-NATOS-FLASHED
BESTSELLER

CYD — NatOS Flashed & Verified

ESP32-2432S028R, flashed with NatOS 37,248-byte image. Verified on hardware: scheduler, VM, ILI9341+DMA, XPT2046. Shell at 115200 baud.

$49.00·~49,000 USEDSHIBARIUM
DETAILS
UM-NATOS-015
NATOS-DEV-KIT

NatOS Dev Kit

Board + microSD + stylus + quick-start. The exact rig every measurement was taken on. Nothing above the drivers is board-specific.

$69.00·~69,000 USEDSHIBARIUM
DETAILS
UM-NATOS-002
NATOS-BOOK-6x9
390 PAGES

nat-os — Paperback 6×9 (390pp)

31 chapters + 7 appendices. Premium-color interior, mirrored gutter, KDP wrap. Every defect left in, every standing rule earned.

$39.00·~39,000 USEDSHIBARIUM
DETAILS
UM-NATOS-001
No MMU. No debugger. No excuses.

The ESP32 cannot protect one program from another —
NatOS recovers that guarantee in software.

Applications run inside a bytecode interpreter that bounds-checks every load and store. A program written for no purpose but to escape its arena faults at offset 256 of 256 — neighbours keep running. This is the complete account, built from the source and 40 engineering reports — failures recorded with the same care as successes.Read the reports →

UM-NATOS-030 — One Bit
DMA_OUTLINK_START was bit 30 (RESTART). Six instruments said success; the glass disagreed.
UM-NATOS-017 — Touch
An axis inverted for three months behind a calibration that could only return one answer.
Standing Rules
12+ rules earned from defects — e.g., a yield must never defer the clock it depends on.
Reference — KDP Wrap Proof (96 dpi)
NatOS KDP cover proof
Source: ../nat-os-test/docs/cover/cover-proof.png · Build with python docs/style/build_cover.py