Namjae Jeon, účastník projektu Samba, ktorý spravuje ovládač EXFAT a server KSMBD v jadre Linux, navrhol zahrnúť do jadra novú implementáciu súborového systému NTFS — ntfsplus. Predpokladá sa, že kvalitnejší a spravovaný ovládač NTFS zlepší kompatibilitu systémov Linux s Windows zariadeniami a zjednoduší prácu používateľov.
V súčasnej podobe je podpora NTFS v Linuxe obmedzená starým NTFS ovládačom, ktorý bol odstránený z jadra Linux a podporoval iba čítanie, a súčasným ovládačom NTFS3, ktorý má mnoho problémov zostávajúcich nevyriešených kvôli slabému spravovaniu. Kvôli týmto problémom mnohí používatelia a distribúcie naďalej používajú starý ovládač ntfs-3g, ktorý funguje v užívateľskom priestore.
Ako základ ovládača ntfsplus bola použitá kódová báza klasického ntfs ovládača, ktorý bol odstránený z jadra a bol zrevidovaný, rozšírený o možnosť zápisu dát a významne upravený na podporu moderných funkcií, ako je použitie folios namiesto buffer_head štruktúry. V novom ovládači je implementované oneskorené pridelenie blokov, čo umožnilo dosiahnuť vysoká výkonnosť operácie zápisu a zníženie fragmentácie. Pre vyrovnávacie operácie zápisu/čítania, priamy vstup/výstup, mapovanie extents a operácie stránkového zápisu/čítania sa používa knižnica iomap.
Na rozdiel od existujúceho ovládača ntfs3, ktorý vyvinula spoločnosť Paragon Software, ovládač ntfsplus preukazuje vyšší výkon a podporuje také funkcie ako iomap, oneskorené pridelenie blokov a mapovanie užívateľských identifikátorov pri montovaní (idmap). Po jeho prijatí do hlavného jadra sa plánuje implementácia plnohodnotného žurnálovania (v ntfs3 sa vytvára iba replay žurnál, ktorý v testoch nefunguje správne). Nový ovládač úspešne prešiel 287 testami zo sady xfstests a tiež implementuje funkcie potrebné na vykonanie testov výkonu Bonnie++ (ovládač ntfs3 prešiel 218 testami xfstests a spôsoboval problémy pri spúšťaní Bonnie++).
Pri vykonávaní testov iozone sa ovládač ntfsplus ukázal byť o 3-5% rýchlejší ako ntfs3 pri zápise v jednovláknovom režime a o 35-110% pri použití 4 vlákien. Rýchlosť čítania ntfsplus a ntfs3 je približne na rovnakej úrovni. V teste na výstup zoznamu súborov (ls -lR) v adresároch s 100/200/400 tisícami súborov je ntfsplus rýchlejší o 12~14%. Z hľadiska rýchlosti pripojenia je ntfsplus rýchlejší 5-6 krát. Vysoký výkon sa dosahuje v ntfsplus vďaka aplikácii asynchrónnych operácií iomap, odloženému prideľovaniu blokov, optimalizácii prideľovania nových klastrov, optimalizácii zlúčenia fragmentov, načítaniu bitovej mapy klastrov na pozadí, proaktívnemu načítaniu blokov inode a informácií o adresároch.
Samostatne pre ntfsplus bol pripravený súbor nástrojov ntfsprogs-plus, pracujúce v priestore používateľa a založené na nástrojoch ntfsprogs z projektu ntfs-3g. Z ntfsprogs boli prenesené nástroje ntfsclone, ntfscluster a ntfsinfo. Projekt tiež vyvinul nový nástroj ntfsck na kontrolu a obnovu poškodených oddielov s NTFS.
Zdroj: opennet.ru
