Mark Harmstone, autor projektu WinBtrfs, publikoval verzi operačního systému Moxnox 1.0, vyvíjenou od roku 2022 jako koníček. Moxnox je prezentován jako operační systém navržený s ohledem na Windows NT, který zajišťuje kompatibilitu se standardy POSIX, využívá souborový systém Btrfs a dosáhl úrovně samosestavení (self-hosting). Projekt obsahuje přibližně 130 tisíc řádků kódu v programovacím jazyce C++ a je distribuován pod licencemi GPL (kern a základní programy), LGPL (knihovny) a MIT (moduly). Podporována je sestavení pro architektury x86-64-v3 a ARMv8.1 (může běžet na desce Raspberry Pi 5).
Systémové volání a nízkoúrovňové rozhraní v jádru jsou implementovány podle vzoru Windows NT, ale struktura jádra a související komponenty se liší od Windows NT. Je umožněno spouštět komponenty prostředí GNU a programy psané pro unixové systémy. Jako formát spustitelných souborů je použit PE, knihovny mají příponu dll a programy příponu exe.
Podporovaná hardwarová zařízení:
- Bloková zařízení: NVMe, SATA, SDHCI (SD karty), virtio-block a USB úložiště.
- Síťové karty: virtio-net, RTL8168, RTL8125.
- Vstupní zařízení: virtio-input, USB HID, klávesnice a myši s rozhraním PS/2.
- Grafika: virtio-gpu, GOP framebuffer, VBE, VGA konzole.
- Konzole: virtio-console, sériový port x86, PL011 ARM.
- USB: XHCI.
V současnosti je v Moxnox implementováno 642 funkcí z přibližně 1200, které jsou popsány ve standardu POSIX 2024, ale to je dostatečné pro provoz takových projektů jako gcc, bash, mesa, openssh, openssl, perl, python a rust. Systémová knihovna je formována z funkcí gnulib, matematických a kryptografických funkcí z musl, funkcí pro práci s regulárními výrazy z tre a funkcí typu printf z mingw. Podporována je samosestavení, což umožňuje zkompilovat Moxnox z prostředí založeného na Moxnox. Spouštění programů Windows zatím není podporováno, ale v budoucnu se plánuje využití implementace API Win32 z Wine.

Mezi portované programy pro Moxnox patří:
- bash
- binutils
- bison
- bzip2
- cairo
- cmake
- coreutils
- curl
- diffutils
- expat
- soubor
- findutils
- flex
- freetype
- gawk
- gcc (pouze pro amd64)
- git
- gmp
- gperf
- grep
- . Verze ICU jsou – bezvýznamné.
- harfbuzz
- hexyl
- jsoncpp
- less
- libarchive
- libiconv
- libpng
- librhash
- libuv
- llvm
- m4
- make
- mako
- markupsafe
- mesa
- mpc
- mpfr
- nano
- ncurses
- netcat
- ninja
- openssh
- openssl
- patch
- perl
- pixman
- python
- pyyaml
- readline
- ripgrep
- rust
- sed
- tar
- vim
- wget
- xz
- zlib
- zstd
V této fázi vývoje je podporován pouze provoz v konzolovém režimu, ale v budoucnu se plánuje implementace grafického rozhraní. Dále zatím chybí podpora víceuživatelského prostředí, bezpečnostních mechanismů, časových pásem, rozložení klávesnic, lokalizací a kódování odlišných od UTF-8.
Tvrdí se, že projekt neobsahuje významný kód generovaný nástroji AI, které byly použity pouze k vykonávání rutinní práce, jako je převod pravidel autotools na CMake, nahrazení volání ioctl funkcí tcgetwinsize při portování programů, psaní testů a hledání chyb v kódu.
Zdroj: opennet.ru
