Skip to content
kazah-png edited this page Aug 12, 2026 · 14 revisions

NyxOS Wiki

NyxOS is a from-scratch x86_64 operating system written in C and assembly — no libc, no third-party kernel code. It boots under QEMU (and on real hardware) into a windowed desktop, runs ring-3 ELF programs preemptively across multiple cores, speaks TCP/IP and TLS 1.2 to the live internet, ships its own web browser, and carries an in-OS C compiler that compiles its own source.

Current release: v6.4.182 (KERNEL_VERSION in kernel/core/kernel.h) · Latest LTS: v5.9.0-LTS

At a glance

Architecture x86_64 long mode, 4-level paging, higher-half monolithic kernel
Multitasking Preemptive weighted round-robin — 512 processes, 1024 threads
Multi-core SMP up to 8 CPUs; user processes run in ring 3 on application processors
Memory Demand paging, copy-on-write, lazy sbrk, mmap, demand-grown user stacks
Syscalls 57, via syscall/sysret — threads, sockets, poll, mmap, signals
Filesystem VFS over ramdisk, read/write EXT2, /proc, /dev
Networking RTL8139 → Ethernet/ARP/IP/ICMP/UDP/TCP → DHCP/DNS/HTTP → TLS 1.2
Cryptography X25519, P-256, P-384, RSA, ECDSA, AES-GCM, SHA-2, X.509 chain verification
GUI 32-window compositor, 4 workspaces, taskbar, Start menu, 10 desktop apps
Browser Selene — HTTP/HTTPS, links, forms, styled tables, tabs, inline PNG/BMP/GIF/JPEG
Toolchain In-OS C compiler (ported TinyCC) + compiler-complete libc — cc compiles, links and runs C; tcc compiles itself in-OS; xbm package manager
Games DOOM (ring-3 port), Minesweeper, Pong, Snake, Tetris + Nyx Voxels & render-perf demos
License GPL v2

Start here

I want to… Page
Build it and boot it Building
Ask a common question FAQ
Look up a term Glossary
Fix something that broke Troubleshooting
Understand the kernel layout Architecture
Follow what happens at power-on Boot-Process
Read the syscall ABI Syscalls
Drive the shell Shell

HOWTO

Task-oriented procedures, each with a worked example, a checklist and a troubleshooting table.

Task Page
Write a ring-3 program HOWTO-Write-a-userspace-program
Add a system call HOWTO-Add-a-system-call
Add a shell command HOWTO-Add-a-shell-command
Add a GUI application HOWTO-Add-a-GUI-application

Subsystems

Area Page
Physical/virtual memory, heap, slab Memory-Management
Scheduler, processes, threads, signals Process-Management
VFS, EXT2, /proc, /dev Filesystem
Ethernet through HTTP, BSD sockets Networking-Stack
TLS 1.2 and the crypto primitives Cryptography-and-TLS
Compositor, framebuffer, windowing GUI-Subsystem
Built-in desktop apps and games Desktop-Applications
The NyxOS web browser Selene-Browser
DEFLATE, PNG, BMP, GIF, JPEG Image-Decoders
Device drivers Drivers
Multi-core support SMP
Privilege boundaries and hardening Security
Ring-3 programs and the shared libc Userspace

Reference

Exhaustive, field-by-field references. Every value is quoted from the source tree.

Topic Page
All 57 syscalls, man-page style Syscall-Reference
All 104 builtins and 62 ring-3 programs Command-Reference
GDT, IDT, MSRs, PTE bits, I/O ports Hardware-Reference
Network headers, ELF, CPIO, EXT2, TLS, image formats Format-Reference
Every source file, with purpose and size Source-Tree-Reference
process_t, vfs_node_t, window_t field by field Kernel-Data-Structures
Diagnosing faults, boot logs, self-tests Debugging
Symptom → cause → fix Troubleshooting
Every release, v1.0.0 → v5.9.180 Version-History

Project

Source https://github.com/kazah-png/nyx-os
Issues https://github.com/kazah-png/nyx-os/issues
License GPL v2
Contact uselessalter on Discord · nyxos@inbox.lv
How to contribute Contributing
Documentation style Wiki-Conventions

Caution

NyxOS is a hobby operating system built for learning. It is not hardened against hostile input and makes no security guaranteesSecurity documents exactly what is and is not defended. The TLS stack verifies certificate chains and can refuse a connection in strict mode, but every cryptographic primitive was written from scratch for this project and reviewed by nobody else. Do not trust it with anything that matters.

See also

External resources

Clone this wiki locally