# Moxnox 1.0: An NT-Like, POSIX-Compatible Hobby Operating System

A new C++ based OS project offering NT-like syscalls with POSIX compatibility.

- **Source:** [Hacker News: Front Page](https://brifing.si/source/b07aa772-b1a0-4a76-aa18-719c6f9e2dde)
- **Published:** 2026-10-27
- **Topic:** [Software & Engineering](https://brifing.si/c/engineering)
- **Original article:** <https://github.com/maharmstone/moxnox>
- **On Brifing:** https://brifing.si/s/319ddac0-6ad2-4104-9d62-d80002678ffb

## Project Overview and Architecture

Moxnox 1.0 is a hobbyist operating system written in approximately 130,000 lines of C++. It supports amd64 and aarch64 architectures while running natively on Btrfs. The project aims to provide an NT-like syscall interface while maintaining POSIX compatibility, distinguishing itself from ReactOS by not attempting a direct recreation of Windows.

## Technical Implementation Details

The system implements 642 of the roughly 1,200 functions defined in POSIX 2024. It utilizes musl for cryptographic and mathematical functions, while mingw handles printf and related tasks. The kernel architecture intentionally avoids paged memory and complex transaction systems, opting instead for modern design choices like the dentry cache and large folios.

## Hardware and System Requirements

For amd64, the system targets x86-64-v3 hardware manufactured after 2015, automatically enabling AVX512 support. On aarch64, it requires ARMv8.1 hardware, such as the Raspberry Pi 5, due to the use of LSE atomics. The system currently supports ACPI exclusively, meaning Device Tree configurations are not compatible with the current kernel implementation.

## Installation and Boot Process

Users can test the OS via QEMU using provided EFI images. Installation requires a Btrfs partition and the use of efibootmgr to configure boot entries. The kernel file is a polyglot binary that conforms to the Linux boot protocol, potentially allowing compatibility with non-EFI bootloaders like GRUB, though this remains untested.

## Development and Build Environment

The build process relies on CMake and Ninja, as standard Unix Makefiles are not supported due to the use of C++ modules. Developers can utilize provided Docker containers containing cross-compilers for amd64 and aarch64. While the system is capable of self-hosting, compiling large tools like Rust or GCC is not yet supported.

## NT Kernel Design Philosophy

Moxnox adopts NT-like low-level interfaces but rejects the complex virtual filesystem and registry structures found in Windows. The developer notes that the NT kernel is underrated, citing features like eventfd and pidfd as examples of advanced design. The project serves as a personal vision of what Windows could have achieved with POSIX.

## Role of AI in Development

The developer explicitly states that no substantive code was written by AI. Instead, AI tools were utilized for mechanical tasks, such as translating autotools to CMake and converting C structs into Rust. Additionally, the developer used AI for code reviews to identify memory leaks and potential deadlocks during the development process.

## Current Limitations and Future

As a version 1.0 release, the system lacks many features, including support for Win32 DLLs and automated daemon management. The developer suggests that future iterations could potentially port Wine components to improve compatibility. Currently, the project serves as an educational endeavor to understand kernel design through hands-on implementation and experimentation.

## Sources covering this story

- https://github.com/maharmstone/moxnox — 

---

_Summary written by Brifing from the original reporting. Copyright in the original article belongs to its publisher; read the full piece at the link above._
