Autorul WinBtrfs a publicat sistemul de operare deschis Moxnox 1.0 cu kernel de tip Windows NT

Mark Harmstone, autorul proiectului WinBtrfs, a publicat versiunea 1.0 a sistemului de operare Moxnox, dezvoltat din 2022 ca un hobby. Moxnox este prezentat ca un sistem de operare inspirat de Windows NT, care asigură compatibilitate cu standardele POSIX, utilizează sistemul de fișiere Btrfs și a atins un nivel de auto-găzduire (self-hosting). Proiectul cuprinde aproximativ 130 de mii de linii de cod scrise în C++ și este distribuit sub licențele GPL (nucleul și programele de bază), LGPL (biblioteci) și MIT (module). Este disponibil o versiune pentru arhitecturile x86-64-v3 și ARMv8.1 (poate rula pe placa Raspberry Pi 5).

Apelurile de sistem și interfețele de nivel inferior din nucleu sunt realizate după modelul Windows NT, însă structura nucleului și componentele aferente diferă de cele ale Windows NT. Este posibilă rularea componentelor mediului GNU și a programelor scrise pentru sisteme asemănătoare Unix. Formatul fișierelor executabile utilizat este PE, bibliotecile au extensia dll, iar programele au extensia exe.

Dispozitive hardware suportate:

  • Dispozitive de bloc: NVMe, SATA, SDHCI (carduri SD), virtio-block și unități USB.
  • Plăci de rețea: virtio-net, RTL8168, RTL8125.
  • Dispozitive de intrare: virtio-input, USB HID, tastaturi și mouse-uri cu interfață PS/2.
  • Grafică: virtio-gpu, GOP framebuffer, VBE, consolă VGA.
  • Consolă: virtio-console, port serial x86, PL011 ARM.
  • USB: XHCI.

În prezent, Moxnox implementează 642 de funcții din aproximativ 1200 descrise în standardul POSIX 2024, dar acest lucru este suficient pentru funcționarea unor proiecte precum gcc, bash, mesa, openssh, openssl, perl, python și rust. Biblioteca de sistem este alcătuită din funcții gnulib, funcții matematice și criptografice din musl, funcții pentru lucrul cu expresii regulate din tre și funcții de tip printf din mingw. Se suportă auto-găzduirea, care permite compilarea Moxnox dintr-un mediu bazat pe Moxnox. Rularea programelor Windows nu este suportată momentan, dar în viitor se intenționează utilizarea implementării API Win32 din Wine pentru aceasta.

Printre programele portate pentru Moxnox se numără:

  • bash
  • binutils
  • bison
  • bzip2
  • cairo
  • cmake
  • coreutils
  • curl
  • diffutils
  • expat
  • file
  • findutils
  • flex
  • freetype
  • gawk
  • gcc (doar pentru amd64)
  • git
  • gmp
  • gperf
  • grep
  • gzip
  • 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
  • în zig, ceea ce a permis integrarea transparentă a CSS și TypeScript, iar acum este posibil să importați un fișier CSS direct în modulul TypeScript:
  • sed
  • tar
  • vim
  • wget
  • xz
  • zlib
  • zstd

În acest stadiu al dezvoltării, este sprijinită doar funcționarea în modul consolei, dar în viitor se plănuiește implementarea și a unei interfețe grafice. De asemenea, suportul pentru medii multi-utilizator, mecanismele de securitate, fusurile orare, aranjamentele tastaturii, localizările și codificările diferite de UTF-8 sunt deocamdată inexistente.

Se afirmă că proiectul nu conține cod semnificativ generat prin instrumente AI, care au fost utilizate doar pentru efectuarea de sarcini de rutină, cum ar fi tradusul regulilor autotools în CMake, înlocuirea apelurilor ioctl cu funcția tcgetwinsize în timpul portării programelor, scrierea testelor și căutarea erorilor în cod.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster