Mark Harmstone, de auteur van het WinBtrfs-project, heeft versie 1.0 van het besturingssysteem Moxnox uitgebracht, dat sinds 2022 als hobby wordt ontwikkeld. Moxnox wordt gepresenteerd als een besturingssysteem dat is ontworpen met het oog op Windows NT, dat compatibiliteit biedt met POSIX-normen, gebruikmaakt van het Btrfs-bestandssysteem en het niveau van zelfvoorzienendheid (self-hosting) heeft bereikt. Het project bestaat uit ongeveer 130.000 regels code in C++ en wordt verspreid onder de GPL-licenties (kernel en basisprogramma's), LGPL (bibliotheken) en MIT (modules). Er is een versie beschikbaar voor de architecturen x86-64-v3 en ARMv8.1 (kan draaien op een Raspberry Pi 5).
Systeemaanroepen en low-level interfaces in de kernel zijn gebaseerd op Windows NT, maar de structuur van de kernel en bijbehorende componenten zijn verschillend van Windows NT. Er is ondersteuning voor het uitvoeren van GNU-omgevingscomponenten en programma's geschreven voor Unix-achtige systemen. De uitvoerbare bestandsindeling is PE, bibliotheken hebben de extensie dll en programma's de extensie exe.
Ondersteunde hardwareapparaten:
- Blokapparaten: NVMe, SATA, SDHCI (SD-kaarten), virtio-block en USB-opslagapparaten.
- Netwerkkaarten: virtio-net, RTL8168, RTL8125.
- Invoerapparaten: virtio-input, USB HID, toetsenborden en muizen met PS/2-interface.
- Grafisch: virtio-gpu, GOP framebuffer, VBE, VGA-console.
- Console: virtio-console, seriƫle poort x86, PL011 ARM.
- USB: XHCI.
Momenteel zijn er 642 functies geĆÆmplementeerd in Moxnox uit ongeveer 1200, zoals beschreven in de POSIX 2024-standaard, maar dit is voldoende voor het draaien van projecten zoals gcc, bash, mesa, openssh, openssl, perl, python en rust. De systeembibliotheek is samengesteld uit functies van gnulib, wiskundige en cryptografische functies uit musl, functies voor het werken met reguliere expressies uit tre en printf-achtige functies uit mingw. Er is ondersteuning voor zelfcompilatie, waarmee Moxnox kan worden gecompileerd vanuit een Moxnox-gebaseerde omgeving. Het draaien van Windows-programma's wordt momenteel niet ondersteund, maar in de toekomst is het de bedoeling om de Win32 API-implementatie uit Wine hiervoor te gebruiken.

Onder de naar Moxnox geportte programma's zijn:
- bash
- binutils
- bison
- bzip2
- cairo
- cmake
- coreutils
- curl
- diffutils
- expat
- file
- findutils
- flex
- freetype
- gawk
- gcc (alleen voor amd64)
- git
- gmp
- gperf
- grep
- gzip
- harfbuzz
- hexyl
- jsoncpp
- less
- libarchive
- libiconv
- libpng
- librhash
- libuv
- llvm
- m4
- make
- mako
- markupsafe
- mesa
- mpc
- mpfr
- Veel mensen hebben hierop gewacht, en veel mensen waren er tegen, maar het is gebeurd: de standaard console teksteditor in Fedora Workstation wordt nano.
- ncurses
- netcat
- ninja
- openssh
- openssl
- patch
- perl
- pixman
- python
- pyyaml
- readline
- ripgrep
- rust
- sed
- tar
- vim
- wget
- xz
- zlib
- zstd
In deze ontwikkelingsfase wordt alleen de console-modus ondersteund, maar in de toekomst is gepland om ook een grafische interface te implementeren. Momenteel ontbreekt ook ondersteuning voor een multi-user omgeving, beveiligingsmechanismen, tijdzones, toetsenbordindelingen, lokale instellingen en coderingen anders dan UTF-8.
Er wordt beweerd dat het project geen significante code bevat die is gegenereerd met AI-tools; deze zijn alleen gebruikt voor routinematige taken, zoals het vertalen van autotools-regels naar CMake, het vervangen van ioctl-aanroepen door de functie tcgetwinsize bij het porteren van programma's, het schrijven van tests en het opsporen van fouten in de code.
Bron: opennet.ru
