WinBtrfs նախագծի հեղինակ Մարկ Հարմսթոունը թողարկել է Moxnox 1.0 օպերացիոն համակարգը, որը նա մշակում է որպես հոբբի 2022 թվականից ի վեր: Moxnox-ը ներկայացվում է որպես ստեղծված՝ նպատակ ունենալով... Windows NT-ն օպերացիոն համակարգ է, որը համատեղելիություն է ապահովում POSIX ստանդարտների հետ, օգտագործում է Btrfs ֆայլային համակարգը և ինքնահոսթինգային է։ Նախագիծը ներառում է մոտավորապես 130 տող C++ կոդ և լիցենզավորված է GPL (միջուկ և բազային ծրագրեր), LGPL (գրադարաններ) և MIT (մոդուլներ) լիցենզիաներով։ Այն աջակցում է x86-64-v3 և ARMv8.1 ճարտարապետությունների համար նախատեսված կառուցվածքներին (կարող է աշխատել Raspberry Pi 5 քարտի վրա)։
Համակարգային կանչերը և միջուկի ցածր մակարդակի ինտերֆեյսները իրականացվում են պատկերում։ Windows NT, սակայն միջուկի կառուցվածքը և դրան կից բաղադրիչները տարբերվում են Windows NT. Հնարավորություն է տալիս գործարկել GNU միջավայրի բաղադրիչներ և Unix-անման համակարգերի համար գրված ծրագրեր: Գործարկվող ֆայլի ձևաչափը PE է, գրադարաններն ունեն .dll ընդլայնում, իսկ ծրագրերը՝ .exe ընդլայնում:
Աջակցվող ապարատային սարքեր՝
- Բլոկային սարքեր՝ NVMe, SATA, SDHCI (SD քարտեր), virtio-block և USB կրիչներ։
- Ցանցային քարտեր՝ virtio-net, RTL8168, RTL8125:
- Մուտքային սարքեր՝ վիրտիո մուտք, USB HID, ստեղնաշարեր և մկնիկներ PS/2 ինտերֆեյսով։
- Գրաֆիկա՝ virtio-gpu, GOP framebuffer, VBE, VGA կոնսոլ։
- Կոնսոլ՝ virtio-կոնսոլ, x86 սերիական միացք, PL011 ARM:
- USB: XHCI:
Moxnox-ը ներկայումս իրականացնում է POSIX 2024 ստանդարտում նկարագրված մոտ 1200 ֆունկցիաներից 642-ը, սակայն սա բավարար է այնպիսի նախագծերի համար, ինչպիսիք են gcc, bash, mesa, openssh, openssl, perl, python և rust-ը: Համակարգի գրադարանը կազմված է gnulib ֆունկցիաներից, musl-ի մաթեմատիկական և կրիպտոգրաֆիկ ֆունկցիաներից, tre-ի կանոնավոր արտահայտության ֆունկցիաներից և mingw-ի printf-անման ֆունկցիաներից: Աջակցվում է ինքնակոմպիլյացիան, որը թույլ է տալիս Moxnox-ին կոմպիլյացիա կատարել Moxnox-ի վրա հիմնված միջավայրից: Գործարկել Windows-ծրագրերը դեռևս չեն աջակցվում, բայց ապագայում նրանք մտադիր են օգտագործել Wine-ի Win32 API իրականացումը՝ դրանք գործարկելու համար։

Moxnox-ի համար պորտացված ծրագրերի շարքում.
- ուժեղ հարվածել
- բինուտիլս
- բիզոն
- bzip2
- Կահիրե
- սմեյք
- coreutils
- գալար
- դիֆուտիլներ
- expat
- ֆայլ
- findutils
- ճկուն
- ազատ տեսակ
- գավ
- gcc (միայն amd64)
- գիտ
- ՊԱԳ-
- gperf
- grep
- gzip
- հարֆբզզ
- հեքսիլ
- jsoncpp
- ավելի քիչ
- լիբարխիվ
- լիբիկոնվ
- libpng
- գրադարանային հեշ
- լիբուվ
- LLVM
- m4
- անել
- մակո
- նշագրման անվտանգություն
- սեղան
- mpc
- mpfr
- nano
- նզովքներ
- netcat
- ninja
- բացսշ
- openssl
- կարկատել
- Perl
- Փիքսմեն
- Python
- պյամլ
- ընթերցման գիծ
- ռիփգրեփ
- ժանգ
- Sed
- կուպր
- եռանդ
- wget
- xz
- ZLIB
- զստդ
Մշակման այս փուլում աջակցվում է միայն կոնսոլային ռեժիմը, սակայն ապագայում նախատեսվում է գրաֆիկական ինտերֆեյս։ Ներկայումս բացակայում է նաև բազմաօգտատեր միջավայրերի, անվտանգության մեխանիզմների, ժամային գոտիների, ստեղնաշարի դասավորությունների, տեղայնացումների և UTF-8-ից բացի այլ կոդավորումների աջակցությունը։
Ասվում է, որ նախագիծը չի պարունակում արհեստական բանականության գործիքների կողմից ստեղծված էական կոդ, որոնք օգտագործվել են միայն առօրյա աշխատանքներ կատարելու համար, ինչպիսիք են autotools-ի կանոնները CMake թարգմանելը, ioctl կանչերը tcgetwinsize ֆունկցիայով փոխարինելը ծրագրերի տեղափոխման, թեստեր գրելու և կոդում սխալներ գտնելու ժամանակ։
Source: opennet.ru
