About Popcorn
UEFI first. Native BOOTX64.EFI, modern display modes, CI on the UEFI image.
What it is
Popcorn is an exo/mono hybrid kernel for x86-64. A layered core owns interrupts, memory, scheduling, and syscalls. New devices land in Rust. The longer goal is a real kernel on modern firmware, not a demo that only boots under old BIOS tricks.
How it is built
UEFI + GRUB
Primary path is UEFI. GRUB Multiboot2 ISO stays for a second boot check.
C + Rust
Asm/C keep entry, IDT, PMM, and early bring-up. Rust owns drivers, screen backends, pops, and the catalog.
Driver network
Devices register once and show up to the shell. Screen, serial, keyboard, clock, block, and more.
Pop modules
Small add-ons (sysinfo, cpu, memory, uptime, …). Dolphin is the in-kernel editor.
v0.7 today
- ✦ Boot: UEFI loader + GRUB ISO,
./scripts/core.sh, QEMU smoke in CI - ✦ Memory: PMM, 4-level paging, per-task address spaces
- ✦ Time/tasks: timer, preemption, sleep/wake
- ✦ Devices: Rust drives for screen, input, serial, block (ram/virtio/NVMe/USB)
- ✦ Shell: interactive console, drive/dev/disk/catalog commands
Still ahead: ring-3 programs, ELF loader, full VFS, networking, real-hardware soak.
Build
- ✦
./scripts/core.sh(build, QEMU,test-uefi) - ✦ Needs NASM, ELF GCC/ld, rustc/cargo, QEMU, OVMF, ISO tools
Below v1.0 is unstable. Scripts are AS-IS.