Moxnox 1.0 – нова експериментальна операційна система
Представлено Moxnox 1.0 – експериментальна операційна система з підтримкою Btrfs
Розробник Mark Harmstone представив Moxnox 1.0, експериментальну операційну систему з відкритим кодом. Вона об’єднує архітектуру, натхненну Windows NT, сумісність з POSIX та нативну підтримку Btrfs.
Що таке Moxnox і його особливості?
Moxnox розробляється з 2022 року як проект хобі. Важливо зазначити, що це незалежна операційна система. Moxnox не є дистрибутивом Linux чи клоном Windows. Версія 1.0 містить близько 130,000 рядків коду на C++ та підтримує архітектури x86-64 і ARM64.
Moxnox цікава своїм дизайном системи. Системні виклики і низькорівневі інтерфейси побудовані за зразком Windows NT, а файлове середовище та середовище додатків відповідають конвенціям Unix. На відміну від ReactOS, що намагається відтворити сумісність з Windows, Moxnox використовує свою власну архітектуру ядра.
Формати виконуваних файлів та підтримка Unix
Виконувані файли в Moxnox використовують формат Portable Executable Windows замість формату ELF Linux. Програми та бібліотеки мають розширення .exe та .dll. У той же час система підтримує файлові шляхи у стилі Unix і функції, такі як fork, які відсутні у традиційному API Windows.

Проте важливо зазначити, що Moxnox не може запускати існуючі Windows додатки, незважаючи на свої NT-сумісні інтерфейси. Розробник вважає, що перенесення бібліотек Win32 Wine з часом можливе, проте на даний момент це не реалізовано.
Портоване програмне забезпечення в Moxnox
До списку портованого програмного забезпечення входять Bash, GNU Coreutils, GCC, LLVM, Git, Python, Perl, Rust, OpenSSH, OpenSSL, Vim, Nano та інші інструменти для розробки. Наразі GCC доступний тільки для x86-64.
Іншим важливим досягненням є самостійна компіляція, що означає, що Moxnox може компілювати свої власні компоненти без використання Linux або Windows як середовища для побудови. Деякі обмеження залишаються, оскільки GCC, Rust та кілька інших додатків поки не можуть компілюватися безпосередньо в Moxnox.
Операційна система використовує Btrfs для зберігання. Вибір Btrfs зрозумілий, враховуючи досвід Harmstone у розробці WinBtrfs, драйвера з відкритим кодом для Windows, який забезпечує доступ до файлових систем Btrfs. Проте він попереджає, що реалізація Btrfs в Moxnox не була широко протестована й повинна використовуватися лише з одноразовими файловими системами.
Сумісність та обмеження Moxnox
Moxnox підтримує NVMe, SATA, SD-карти, USB-накопичувачі та пристрої VirtIO. Підтримка мереж включає адаптери VirtIO та вибрані контролери Realtek. Щодо вводу, підтримуються USB HID, а також клавіатури та миші PS/2.
Підтримка графіки наразі обмежена функціональністю framebuffer та текстового консоля. Це включає VirtIO GPU, GOP framebuffer, VBE та текстову консоль VGA. Графічне середовище робочого столу відсутнє.
Moxnox залишає простір для вдосконалень. Незважаючи на те, що він досяг версії 1.0, це все ще експериментальний проект. Багато механізмів безпеки, підтримка кількох користувачів та інші можливості поки що відсутні. Є обмеження щодо продуктивності, зокрема в алокації пам’яті та мережах.
Додаткову інформацію, включно з інструкціями з установки та вихідним кодом, можна знайти на GitHub репозиторії Moxnox. Бітники Moxnox 1.0 доступні на сторінці релізів.
Для тих, хто бажає експериментувати з системою, доступні попередньо зібрані образи дисків x86-64 і ARM64, а також інструкції для тестування Moxnox під QEMU або установки на фізичне обладнання.




