Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NyxOS, rebuilt from scratch in Zig — a freestanding Multiboot kernel that boots on bare metal

     


About

Part of the NyxOS family — the same OS, rebuilt from zero in a different language each time. This is the Zig cut: a small Multiboot assembly stub hands control to kmain(), compiled by Zig for a x86-freestanding target — no std, no runtime. It writes its banner straight to VGA text memory.

NyxOS-Zig booting in QEMU

NyxOS-Zig booting in QEMU — freestanding Zig writing to the VGA text buffer

Why Zig: freestanding by default, first-class C interop, and comptime. A single-binary toolchain that cross-compiles anywhere. Proven in the wild by a healthy crop of hobby kernels.

Build & run

Needs zig (0.13), nasm, ld, and qemu.

make        # -> nyxos-zig.elf  (verified Multiboot with grub-file)
make run    # boot it in QEMU

Layout

  • boot.asm — Multiboot header + entry stub that calls kmain
  • kernel.zig — the freestanding Zig kernel (VGA console)
  • linker.ld — links the kernel at 1 MiB, Multiboot header first
  • Makefile — build and boot

Status

Early — it boots and paints the screen. Next up: a GDT, interrupts, and a VGA console backed by Zig's comptime.

About

NyxOS, rebuilt from scratch in Zig — a freestanding x86_64 OS. Part of the NyxOS family.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages