După mai bine de doi ani de dezvoltare, a fost publicată versiunea 1.10 a proiectului WinBtrfs, care dezvoltă un driver pentru utilizarea sistemului de fișiere Btrfs pe platforma Windows. WinBtrfs nu se bazează pe codul Btrfs din nucleul Linux, ci este o implementare alternativă creată de la zero. Este suportat pe Windows XP și versiunile mai noi. Driverul este inclus în sistemul de operare ReactOS și poate fi utilizat pentru a porni Windows dintr-o partiție cu Btrfs. Codul este scris în limbajele C/C++ și este distribuit sub licența LGPLv3.
WinBtrfs suportă majoritatea funcționalităților versiunii Linux a Btrfs, inclusiv scrierea și citirea în mod asincron, utilizarea RAID0/1/10/5/6, caching, autodetectarea partițiilor, ACL, linkuri simbolice, subpartiții, snapshot-uri, linkuri dure, fișiere sparse, alocare preventivă de spațiu, compresie, echilibrare, verificarea integrității datelor, adăugarea și eliminarea de unități, trimiterea și primirea subpartițiilor, redimensionarea partițiilor, checksum-uri avansate (xhash, sha256, blake2). Printre funcționalitățile specifice ale driverului se numără implementarea fluxurilor de date alternative și asocierea identificatorilor de utilizatori Linux și Windows. Este posibilă conversia partițiilor NTFS existente în Btrfs.
Printre modificările din noua versiune:
- A fost adăugat suport pentru scrierea imaginilor de disc cu informații despre spațiul liber.
- A fost implementată posibilitatea de a salva fișiere mici în blocuri de metadate (inline) într-o formă comprimată.
- A fost îmbunătățită funcționarea cu unitățile externe. A fost oprit suportul pentru crearea de seturi RAID pe unități externe.
- A crescut fiabilitatea recuperării după erori cauzate de lipsa de memorie RAM (OOM) sau epuizarea spațiului liber pe unitate (ENOSPC).
- Au fost eliminate blocările neașteptate care apăreau la mutarea fișierelor între subpartiții și la crearea simultană de multe fișiere.
- A fost corectată o eroare care ducea la coruperea arborelui de extente în timpul scrierii snapshot-urilor.
- A fost remediată blocarea mutuală în timpul lucrului cu linkuri dure.
- Au fost refactorizate structurile interne și constantele pentru a se apropia de variantele utilizate în Linux.
- În revizuirea modificărilor și analiza erorilor a fost implicat asistentul AI Claude, dar codul, la fel ca înainte, este creat exclusiv manual.
Sursa: opennet.ro
