مارک هارستون، نویسنده پروژه WinBtrfs، سیستم عامل Moxnox 1.0 را منتشر کرده است که از سال ۲۰۲۲ به عنوان یک سرگرمی در حال توسعه آن بوده است. Moxnox به گونهای طراحی شده است که با نگاهی به ... Windows NT یک سیستم عامل است که با استانداردهای POSIX سازگاری دارد، از سیستم فایل Btrfs استفاده میکند و خود-میزبان است. این پروژه تقریباً شامل ۱۳۰،۰۰۰ خط کد C++ است و تحت مجوز GPL (برنامههای هسته و پایه)، LGPL (کتابخانهها) و MIT (ماژولها) منتشر شده است. این سیستم عامل از معماریهای x86-64-v3 و ARMv8.1 پشتیبانی میکند (میتواند روی برد Raspberry Pi 5 اجرا شود).
فراخوانیهای سیستمی و رابطهای سطح پایین در هسته، در تصویر پیادهسازی شدهاند. Windows NT، اما ساختار هسته و اجزای مرتبط با آن متفاوت است. Windows NT. امکان اجرای اجزا و برنامههای محیط گنو نوشته شده برای سیستمهای شبه یونیکس را فراهم میکند. فرمت فایل اجرایی PE است، کتابخانهها پسوند .dll و برنامهها پسوند .exe دارند.
دستگاههای سختافزاری پشتیبانیشده:
- دستگاههای بلوکی: NVMe، SATA، SDHCI (کارتهای SD)، بلوک مجازی و درایوهای USB.
- کارتهای شبکه: virtio-net، RTL8168، RTL8125.
- دستگاههای ورودی: ورودی مجازی، USB HID، صفحهکلید و ماوس با رابط PS/2.
- گرافیک: virtio-gpu، GOP framebuffer، VBE، کنسول VGA.
- کنسول: کنسول مجازی، پورت سریال x86، PL011 ARM.
- یو اس بی: XHCI
Moxnox در حال حاضر ۶۴۲ تابع از تقریباً ۱۲۰۰ تابع توصیفشده در استاندارد POSIX 2024 را پیادهسازی میکند، اما این تعداد برای پروژههایی مانند gcc، bash، mesa، openssh، openssl، perl، python و rust کافی است. کتابخانه سیستم از توابع gnulib، توابع ریاضی و رمزنگاری از musl، توابع عبارت منظم از tre و توابع شبه printf از mingw تشکیل شده است. کامپایل خودکار پشتیبانی میشود و به Moxnox اجازه میدهد تا از یک محیط مبتنی بر Moxnox کامپایل شود. راهاندازی Windows- برنامهها هنوز پشتیبانی نمیشوند، اما در آینده قصد دارند از پیادهسازی Win32 API از Wine برای راهاندازی آنها استفاده کنند.

از جمله برنامههای پورت شده برای Moxnox:
- بر هم زدن
- دوتایی
- گاومیش کوهان دار امریکایی
- bzip2
- قاهره
- ساختن
- هسته اصلی
- حلقه
- دیفیوتیول ها
- مهاجرین
- پرونده
- یافته ها
- خم کردن
- نوع آزاد
- گاو
- gcc (فقط amd64)
- دستگاه گوارش
- GMP
- gperf
- grep استفاده
- از gzip
- harfbuzz
- هگزیل
- jsoncpp
- کمتر
- libarchive
- لیبیکانو
- libpng
- لیبرهش
- لیبوو
- llvm
- m4
- ساخت
- ماکو
- نشانهگذاری ایمن
- تپه
- mpc
- ام پی اف آر
- نانو
- نفرین
- netcat
- نینجا
- باز می شود
- openssl
- وصله
- پرل
- پیکسمن
- پایتون
- پیامل
- خط خواندن
- ریپگرپ
- زنگ
- SED
- قیر
- نیرو
- دستور wget
- xz
- زلیب
- zstd
در این مرحله از توسعه، فقط حالت کنسول پشتیبانی میشود، اما یک رابط گرافیکی برای آینده برنامهریزی شده است. پشتیبانی از محیطهای چند کاربره، مکانیسمهای امنیتی، مناطق زمانی، طرحبندی صفحه کلید، زبانهای محلی و کدگذاریهای غیر از UTF-8 نیز در حال حاضر وجود ندارد.
گفته میشود این پروژه هیچ کد قابل توجهی که توسط ابزارهای هوش مصنوعی تولید شده باشد، ندارد و این ابزارها فقط برای انجام کارهای روتین مانند ترجمه قوانین autotools به CMake، جایگزینی فراخوانیهای ioctl با تابع tcgetwinsize هنگام پورت کردن برنامهها، نوشتن تستها و یافتن خطاها در کد استفاده میشدند.
منبع: opennet.ru
