Operating system that sucks less.
Kyronix is a modern hybrid operating system focused on performance, security and stability.
- x86-64, 4-level paging, SMEP, NX-bit
- Limine bootloader (BIOS + UEFI)
- Preemptive scheduler (~250 Hz)
- ELF64 loader (PIE + musl)
- 150+ Linux-compatible syscalls
- Loadable ELF64 kernel modules (
insmod,rmmod,lsmod) - Demand paging (
mmap,mprotect,mremap,brk) - RTC, CPUID, RDRAND
- Framebuffer console (PSF fonts)
- PS/2 keyboard & mouse
- PCI enumeration
- AHCI (SATA)
- virtio-net
- Serial console (COM1)
- evdev (
/dev/input/event*) - Virtual terminals
- UIO
- POSIX VFS
- CPIO initramfs
- Ext2 (R/W)
- FAT32 (R/W)
- procfs, devfs
- eventfd, pipe, AF_UNIX sockets
Networking (LwIP)
- ARP, IPv4, ICMP, UDP, TCP
- DHCP client
- AF_INET socket API
- ping, wget, nc
- ksh shell
- vi text editor
- kyrobox POSIX utilities
- login authentication
- pkg package manager
- Runs musl-linked applications
- POSIX signals
clone()threads- Jails (FS/PID/IPC isolation)
- Shared memory
- futex
- epoll, poll, select
- Continuous integration test suite
PHANTOM_FORKING records suspicious faults, VFS access and network activity.
Trap mode can create a COW sandbox with an isolated synthetic VFS, dummy crypto
material, sanitized descriptors and simulated network replies.
Quarantine mode parks the source process. User write/NX faults are queued to a kernel worker, which builds the sandbox and resumes the exact faulting instruction there. Sandbox setup is atomic and fails closed.
This is an experimental mechanism: the queue is bounded, unsupported faults use the normal signal/panic path, and fault-quarantined sources cannot be safely resumed.
Anti-TOCTOU jitter correlates rapid cross-thread VFS and futex/memory access,
then delays the flagged thread's next wake-up by 25–250 µs.
gcc binutils make nasm bison flex musl-tools qemu-system xorriso cpio
dosfstools mtools e2fsprogs gawk libncurses-dev curl wget tar file gitmake iso
make runmake run boots the live system and attaches a persistent 512 MiB disk. Log
in as root/root and run installer. After installation, boot that disk
directly with:
make bootThe installed system is stored in dist/kyronix-disk.img. make clean keeps
this file.
| Target | Description |
|---|---|
make / make iso |
Build dist/kyronix.iso |
make live |
Build a RELEASE image dist/kyronix-<ver>-RELEASE-amd64-live.iso (+ .sha256) |
make run |
Build and boot the ISO with the persistent disk |
make boot |
Boot the installed disk without the ISO |
make test |
Build and run all tests in QEMU |
make clean |
Remove build output, preserving the installed disk |
To build in a container, append CRUNTIME=podman or CRUNTIME=docker.
| Directory | Purpose |
|---|---|
kernel/ |
Kernel source |
user/ |
Userspace |
rootfs/ |
Initramfs |
boot/ |
Limine boot configs & boot wallpaper |
limine/ |
Bootloader |
meta/ |
Assets & screenshots |
If you like Kyronix, consider supporting its development.
Distributed under the ISC License. See LICENSE for more information.