Mikuláš Patočka, një nga zhvilluesit e LVM dhe autor i disa , të lidhura me optimizimin e funksionimit të sistemeve të ruajtjes, që punon në kompaninë Red Hat, në listën e shpërndarjes për zhvilluesit e bërthamës Linux një sistem të ri skedarësh , i orientuar për krijimin e një sistemi skedarësh kompakt dhe të shpejtë për çipat e kujtesës jo-fikse (NVM), e cila kombinon performancën e RAM me aftësinë për ruajtjen e përhershme të përmbajtjes.
Gjatë zhvillimit të NVFS është marrë parasysh përvoja e sistemeve skedarësh , e krijuar në vitin 2017 veçanërisht për kujtesën NVM, por e papranueshme në bërthamën Linux dhe në bërthamat Linux nga 4.13 deri në 5.1.
Sistemi skedarësh i propozuar NVFS është ndjeshëm më i thjeshtë se NOVA (4972 rreshta kodi ndaj 21459), ofron një utilitar fsck, ka performancë më të lartë, mbështet atributet e zgjeruara (xattrs), etiketat e sigurisë, ACL dhe kuotat, por nuk mbështet snapshotet. e NVFS është e afërt me
sistem skedarësh Ext4 dhe përshtatet mirë në modelin e sistemeve skedarësh bazuar në nën-sistemin VFS, duke lejuar minimizimin e numrit të zgjerimeve dhe duke kaluar me një modul që nuk kërkon modifikime në bërthamë.
NVFS përdor ndërfaqen e bërthamës për qasje direkte në pajisjet e kujtesës së qëndrueshme pa kaluar nëpër të dhënat e faqeve. Për optimizimin e punës me kujtesën NVM, ku përdoret adresimi me byte, përmbajtja e ruajtësit mapohet në hapësirën e adresës lineare të bërthamës pa përdorur nivelin tradicional të pajisjeve bllok dhe të dhënat ndërmjetësuese. Për ruajtjen e përmbajtjes së katalogëve përdoret (radix tree), ku çdo emër skedari është hashuar dhe vlera e hashit përdoret gjatë kërkimit në pemë.
Integriteti i të dhënave sigurohet përmes mekanizmit "" (si në UFS nga FreeBSD dhe në FFS nga OpenBSD) pa përdorur regjistrimin. Për të përjashtuar dëmtimin e skedarëve në NVFS, operacionet e ndryshimit të të dhënave grupohen në një mënyrë që një dështim nuk mund të shkaktojë humbje bllokesh ose inode, dhe integriteti i strukturave rikuperohet përmes utilitarit fsck. Utilitari fsck punon në mënyrë shumë-fijore dhe siguron performancë deri në 1.6 milion inode në sekondë.
Në NVFS realizoi operacionin e kopjimit të drurit me tekstet burimore të bërthames Linux në kujtesën NVM rreth 10% më shpejt se NOVA, 30% më shpejt se ext4 dhe 37% më shpejt se XFS. Në testin e kërkimit të të dhënave, sistemi i skedareve NVFS ishte më i shpejtë se NOVA me 3%, dhe se ext4 dhe XFS me 15% (por gjatë përdorimit të caches disk, NOVA ishte më e ngadaltë me 15%).
Në testin e një milioni operacioneve me katalogë, NVFS e kaloi NOVA me 40%, ext4 me 22%, dhe XFS me 46%. Në simullimin e aktivitetit të DBMS, sistemi i skedareve NVFS e kaloi NOVA me 20%, ext4 18 herë dhe XFS 5 herë. Në testin fs_mark, performancat e NVFS dhe NOVA u gjetën në nivel të ngjashëm, ndërsa ext4 dhe XFS mbetën pas me rreth 3 herë.
Mungesa e sistemeve tradicionale të skedarëve në kujtesën NVM është e shkaktuar nga fakti se ato nuk janë të dizajnuara për adresimin byte, që aplikohet në kujtesën e paenergji, e cila duket si RAM e zakonshme. Leximi nga disqet tradicionale siguron atomikën e operacionit në nivelin e leximit/shkruarjes së sektorëve, ndërsa kujtesa NVM ofron akses në nivelin e fjalëve të veçanta të makinës. Për më tepër, sistemet tradicionale të skedarëve përpiqen të zvogëlojnë intensitetin e qasjes në ruajtës, i cili konsiderohet si më i ngadaltë se RAM, dhe përpiqen të grumbullojnë operacionet për të siguruar leximin e rregullt kur përdoren disqet e ngurta, të menaxhojnë radhët e kërkesave, të luftojnë fragmentimin dhe të ndajnë prioritetet e realizimit të operacioneve të ndryshme. Për kujtesën NVM, komplikime të tilla janë të panevojshme, pasi shpejtësia e qasjes në të dhëna është e ngjashme me RAM, dhe rendi i qasjes nuk ka rëndësi.
Burimi: opennet.ru
