Tipuri de sisteme de fișiere. Care este mai bine să alegi? Fișiere și sistem de fișiere

De ce este posibil ca un smartphone să nu lanseze programe de pe un card de memorie? Prin ce diferă fundamental ext4 de ext3? De ce va dura o unitate flash mai mult dacă o formatați în NTFS și nu în FAT? Care este principala problemă cu F2FS? Răspunsurile se află în caracteristicile structurale ale sistemelor de fișiere. Vom vorbi despre ele.

Introducere

Sistemele de fișiere definesc modul în care sunt stocate datele. Acestea determină ce limitări va întâmpina utilizatorul, cât de rapide vor fi operațiunile de citire și scriere și cât timp va funcționa unitatea fără defecțiuni. Acest lucru este valabil mai ales pentru SSD-urile bugetare și pentru frații lor mai mici - unitățile flash. Cunoscând aceste caracteristici, puteți profita la maximum de orice sistem și puteți optimiza utilizarea acestuia pentru sarcini specifice.

Trebuie să alegeți tipul și parametrii sistemului de fișiere de fiecare dată când trebuie să faceți ceva non-trivial. De exemplu, doriți să accelerați cele mai comune operațiuni cu fișiere. La nivel de sistem de fișiere, acest lucru poate fi realizat în diferite moduri: indexarea va oferi căutări rapide, iar pre-rezervarea blocurilor gratuite va face mai ușor să rescrieți fișierele care se schimbă frecvent. Pre-optimizarea datelor din RAM va reduce numărul de operațiuni I/O necesare.

Asemenea proprietăți ale sistemelor de fișiere moderne precum scrierea leneșă, deduplicarea și alți algoritmi avansați ajută la creșterea perioadei de funcționare fără probleme. Sunt relevante în special pentru SSD-urile ieftine cu cipuri de memorie TLC, unități flash și carduri de memorie.

Există optimizări separate pentru diferite niveluri de matrice de discuri: de exemplu, sistemul de fișiere poate suporta oglindirea simplificată a volumului, instantanee instantanee sau scalare dinamică fără a scoate volumul offline.

Cutie neagră

În general, utilizatorii lucrează cu sistemul de fișiere care este oferit implicit de sistemul de operare. Rareori creează noi partiții de disc și chiar mai rar se gândesc la setările lor - pur și simplu folosesc parametrii recomandați sau chiar cumpără medii preformatate.

Pentru fanii Windows, totul este simplu: NTFS pe toate partițiile de disc și FAT32 (sau același NTFS) pe unitățile flash. Dacă există un NAS și folosește un alt sistem de fișiere, atunci pentru majoritatea rămâne dincolo de percepție. Pur și simplu se conectează la el prin rețea și descarcă fișiere, ca dintr-o cutie neagră.

Pe gadgeturile mobile cu Android, ext4 se găsește cel mai adesea în memoria internă și FAT32 pe cardurile microSD. Lui Yabloko nu îi pasă deloc ce fel de sistem de fișiere au: HFS+, HFSX, APFS, WTFS... pentru ei există doar pictograme frumoase de foldere și fișiere desenate de cei mai buni designeri. Utilizatorii Linux au cea mai bogată opțiune, dar puteți adăuga suport pentru sisteme de fișiere non-native atât în ​​Windows, cât și în macOS - mai multe despre asta mai târziu.

Rădăcini comune

Au fost create peste o sută de sisteme de fișiere diferite, dar puțin mai mult de o duzină pot fi considerate actuale. Deși toate au fost dezvoltate pentru propriile aplicații specifice, multe au ajuns să fie legate la nivel conceptual. Ele sunt similare deoarece folosesc același tip de structură de reprezentare a (meta)datelor - B-trees („bi-trees”).

Ca orice sistem ierarhic, un arbore B începe cu o înregistrare rădăcină și apoi se ramifică în elemente frunză - înregistrări individuale ale fișierelor și atributele acestora, sau „frunze”. Motivul principal pentru crearea unei astfel de structuri logice a fost accelerarea căutării obiectelor sistemului de fișiere pe matrice dinamice mari - cum ar fi hard disk-uri cu mai mulți terabyte sau chiar matrice RAID mai mari.

Arborele B necesită mult mai puține accesări la disc decât alte tipuri de arbori echilibrați pentru a efectua aceleași operațiuni. Acest lucru se realizează datorită faptului că obiectele finale din arborii B sunt situate ierarhic la aceeași înălțime, iar viteza tuturor operațiunilor este precis proporțională cu înălțimea arborelui.

Ca și alți copaci echilibrați, copacii B au lungimi egale de la rădăcină la orice frunză. În loc să crească în sus, ele se ramifică mai mult și cresc mai late: toate punctele de ramificație dintr-un arbore B stochează multe referințe la obiecte copil, făcându-le ușor de găsit în mai puține apeluri. Un număr mare de pointeri reduce numărul de operațiuni pe disc care consumă cel mai mult timp - poziționarea capului la citirea blocurilor arbitrare.

Conceptul de arbori B a fost formulat încă din anii șaptezeci și de atunci a suferit diverse îmbunătățiri. Într-o formă sau alta este implementat în NTFS, BFS, XFS, JFS, ReiserFS și multe SGBD-uri. Toți sunt rude în ceea ce privește principiile de bază ale organizării datelor. Diferențele se referă la detalii, adesea destul de importante. Sistemele de fișiere înrudite au, de asemenea, un dezavantaj comun: toate au fost create pentru a funcționa special cu discuri chiar înainte de apariția SSD-urilor.

Memoria flash ca motor al progresului

Unitățile cu stare solidă înlocuiesc treptat unitățile de disc, dar deocamdată sunt forțate să folosească sisteme de fișiere care le sunt străine, transmise prin moștenire. Sunt construite pe matrice de memorie flash, ale căror principii de funcționare diferă de cele ale dispozitivelor de disc. În special, memoria flash trebuie ștearsă înainte de a fi scrisă, operație pe care cipurile NAND nu o pot realiza la nivel individual de celulă. Este posibil numai pentru blocuri mari în întregime.

Această limitare se datorează faptului că în memoria NAND toate celulele sunt combinate în blocuri, fiecare dintre ele având o singură conexiune comună la magistrala de control. Nu vom intra în detalii despre organizarea paginii și nu vom descrie ierarhia completă. Însuși principiul operațiunilor de grup cu celule și faptul că dimensiunile blocurilor de memorie flash sunt de obicei mai mari decât blocurile abordate în orice sistem de fișiere sunt importante. Prin urmare, toate adresele și comenzile pentru unitățile cu flash NAND trebuie traduse prin stratul de abstractizare FTL (Flash Translation Layer).

Compatibilitatea cu logica dispozitivelor de disc și suportul pentru comenzile interfețelor lor native este asigurată de controlerele de memorie flash. De obicei, FTL este implementat în firmware-ul lor, dar poate fi implementat (parțial) pe gazdă - de exemplu, Plextor scrie drivere pentru SSD-urile sale care accelerează scrierea.

Este imposibil să faci fără FTL, deoarece chiar și scrierea unui bit într-o anumită celulă declanșează o serie întreagă de operații: controlerul găsește blocul care conține celula dorită; blocul este citit complet, scris în cache sau în spațiu liber, apoi șters în întregime, după care este rescris înapoi cu modificările necesare.

Această abordare amintește de viața de zi cu zi în armată: pentru a da un ordin unui soldat, sergentul face o formație generală, îl cheamă pe bietul din formație și le poruncește celorlalți să se împrăștie. În memoria acum rară NOR, organizarea era forțe speciale: fiecare celulă era controlată independent (fiecare tranzistor avea un contact individual).

Sarcinile controlerelor sunt în creștere, deoarece cu fiecare generație de memorie flash procesul tehnic de producție scade pentru a crește densitatea și a reduce costul stocării datelor. Odată cu standardele tehnologice, durata de viață estimată a cipurilor este, de asemenea, în scădere.

Modulele cu celule SLC cu un singur nivel aveau o resursă declarată de 100 de mii de cicluri de rescriere și chiar mai mult. Multe dintre ele încă funcționează pe vechi unități flash și carduri CF. Pentru MLC de clasă enterprise (eMLC), resursa a fost declarată în intervalul de la 10 la 20 de mii, în timp ce pentru MLC obișnuit de gradul de consumator este estimată la 3-5 mii. Memoria de acest tip este stoarsă în mod activ de TLC și mai ieftin, a cărui resursă abia ajunge la o mie de cicluri. Menținerea duratei de viață a memoriei flash la un nivel acceptabil necesită trucuri software, iar noile sisteme de fișiere devin unul dintre ele.

Inițial, producătorii au presupus că sistemul de fișiere nu este important. Controlerul în sine trebuie să deservească o serie de celule de memorie de scurtă durată de orice tip, distribuind sarcina între ele într-un mod optim. Pentru driverul sistemului de fișiere, acesta simulează un disc obișnuit și el însuși efectuează optimizări de nivel scăzut pentru orice acces. Cu toate acestea, în practică, optimizarea variază de la dispozitiv la dispozitiv, de la magic la fals.

În SSD-urile pentru întreprinderi, controlerul încorporat este un computer mic. Are o memorie tampon uriașă (o jumătate de gigaoctet sau mai mult) și acceptă multe tehnici de eficiență a datelor pentru a evita ciclurile inutile de rescriere. Cipul organizează toate blocurile din cache, efectuează scrieri leneșe, efectuează deduplicare din mers, rezervă unele blocuri și șterge altele în fundal. Toată această magie se întâmplă complet neobservată de OS, programe și utilizator. Cu un astfel de SSD, chiar nu contează ce sistem de fișiere este folosit. Optimizările interne au un impact mult mai mare asupra performanței și resurselor decât cele externe.

SSD-urile bugetare (și cu atât mai mult unitățile flash) sunt echipate cu controlere mult mai puțin inteligente. Cache-ul din ele este limitat sau absent, iar tehnologiile avansate de server nu sunt folosite deloc. Controlerele din cardurile de memorie sunt atât de primitive încât adesea se pretinde că nu există deloc. Prin urmare, pentru dispozitivele ieftine cu memorie flash, metodele externe de echilibrare a încărcăturii rămân relevante - în primul rând folosind sisteme de fișiere specializate.

De la JFFS la F2FS

Una dintre primele încercări de a scrie un sistem de fișiere care să țină cont de principiile organizării memoriei flash a fost JFFS - Journaling Flash File System. Inițial, această dezvoltare a companiei suedeze Axis Communications a avut ca scop creșterea eficienței memoriei dispozitivelor de rețea pe care Axis le-a produs în anii nouăzeci. Prima versiune a JFFS a acceptat doar memoria NOR, dar deja în a doua versiune a devenit prieten cu NAND.

În prezent, JFFS2 are o utilizare limitată. Este încă folosit în principal în distribuțiile Linux pentru sistemele încorporate. Poate fi găsit în routere, camere IP, NAS și alți obișnuiți ai Internetului lucrurilor. În general, oriunde este necesară o cantitate mică de memorie fiabilă.

O altă încercare de a dezvolta JFFS2 a fost LogFS, care a stocat inoduri într-un fișier separat. Autorii acestei idei sunt Jorn Engel, angajat al diviziei germane a IBM, și Robert Mertens, profesor la Universitatea din Osnabrück. Codul sursă LogFS este disponibil pe GitHub. Judecând după faptul că ultima modificare a fost făcută acum patru ani, LogFS nu a câștigat popularitate.

Dar aceste încercări au stimulat apariția unui alt sistem de fișiere specializat - F2FS. A fost dezvoltat de Samsung Corporation, care reprezintă o parte considerabilă din memoria flash produsă în lume. Samsung produce cipuri NAND Flash pentru propriile dispozitive și pentru alte companii și dezvoltă, de asemenea, SSD-uri cu interfețe fundamental noi în loc de cele vechi de disc. Crearea unui sistem de fișiere specializat optimizat pentru memorie flash a fost o necesitate de mult așteptată din punctul de vedere al Samsung.

Acum patru ani, în 2012, Samsung a creat F2FS (Flash Friendly File System). Ideea ei a fost bună, dar implementarea s-a dovedit a fi brută. Sarcina cheie la crearea F2FS a fost simplă: reducerea numărului de operațiuni de rescriere a celulelor și distribuirea sarcinii pe acestea cât mai uniform posibil. Acest lucru necesită efectuarea de operații pe mai multe celule din același bloc în același timp, mai degrabă decât forțarea lor pe rând. Aceasta înseamnă că ceea ce este necesar nu este rescrierea instantanee a blocurilor existente la prima solicitare a sistemului de operare, ci stocarea în cache a comenzilor și a datelor, adăugarea de noi blocuri la spațiul liber și ștergerea întârziată a celulelor.

Astăzi, suportul F2FS este deja implementat oficial în Linux (și, prin urmare, în Android), dar în practică nu oferă încă avantaje speciale. Caracteristica principală a acestui sistem de fișiere (rescrie leneșă) a condus la concluzii premature cu privire la eficacitatea acestuia. Vechiul truc de cache a păcălit chiar și versiunile timpurii ale benchmark-urilor, în care F2FS a demonstrat un avantaj imaginar nu de câteva procente (cum era de așteptat) sau chiar de mai multe ori, ci de ordine de mărime. Driverul F2FS a raportat pur și simplu finalizarea unei operațiuni pe care controlerul tocmai plănuia să o facă. Cu toate acestea, dacă câștigul real de performanță pentru F2FS este mic, atunci uzura celulelor va fi cu siguranță mai mică decât atunci când se utilizează același ext4. Acele optimizări pe care un controler ieftin nu le poate face vor fi efectuate la nivelul sistemului de fișiere însuși.

Extensii și hărți de biți

Deocamdată, F2FS este perceput ca exotic pentru geek. Chiar și smartphone-urile proprii ale Samsung încă folosesc ext4. Mulți consideră că este o dezvoltare ulterioară a ext3, dar acest lucru nu este în întregime adevărat. Este mai mult despre o revoluție decât despre spargerea barierei de 2 TB per fișier și pur și simplu creșterea altor indicatori cantitativi.

Când computerele erau mari și fișierele mici, adresarea nu era o problemă. Fiecărui fișier i s-a alocat un anumit număr de blocuri, ale căror adrese au fost introduse în tabelul de corespondență. Așa a funcționat sistemul de fișiere ext3, care rămâne în funcțiune până în prezent. Dar în ext4 a apărut o metodă de adresare fundamental diferită - extents.

Extensiunile pot fi considerate ca extensii de inoduri ca seturi discrete de blocuri care sunt adresate în întregime ca secvențe contigue. O extent poate conține un întreg fișier de dimensiune medie, dar pentru fișiere mari este suficient să alocați o duzină sau două extent. Acest lucru este mult mai eficient decât abordarea a sute de mii de blocuri mici de patru kiloocteți.

Mecanismul de înregistrare în sine s-a schimbat și în ext4. Acum blocurile sunt distribuite imediat într-o singură solicitare. Și nu în avans, ci imediat înainte de a scrie date pe disc. Alocarea leneșă cu mai multe blocuri vă permite să scăpați de operațiunile inutile de care ext3 s-a făcut vinovat: în ea, blocurile pentru un fișier nou au fost alocate imediat, chiar dacă încapea în întregime în cache și era planificat să fie șters ca temporar.


Dieta restricționată în grăsimi

Pe lângă arborii echilibrați și modificările acestora, există și alte structuri logice populare. Există sisteme de fișiere cu un tip de organizare fundamental diferit - de exemplu, liniară. Probabil că folosești cel puțin unul dintre ele des.

Mister

Ghici ghicitoarea: la doisprezece a început să se îngrașă, la șaisprezece era o grasă proastă, iar la treizeci și doi a îngrășat și a rămas o simplă. Cine este ea?

Așa este, aceasta este o poveste despre sistemul de fișiere FAT. Cerințele de compatibilitate i-au oferit o ereditate proastă. Pe dischete era pe 12 biți, pe hard disk-uri a fost inițial pe 16 biți și a supraviețuit până în prezent ca pe 32 de biți. În fiecare versiune ulterioară, numărul de blocuri adresabile a crescut, dar nimic nu s-a schimbat în esența sa.

Sistemul de fișiere FAT32 încă popular a apărut acum douăzeci de ani. Astăzi este încă primitiv și nu acceptă liste de control al accesului, cote de disc, compresie de fundal sau alte tehnologii moderne de optimizare a datelor.

De ce este nevoie de FAT32 în zilele noastre? Totul este încă doar pentru a asigura compatibilitatea. Producătorii cred pe bună dreptate că o partiție FAT32 poate fi citită de orice sistem de operare. De aceea îl creează pe hard disk-uri externe, USB Flash și carduri de memorie.

Cum să eliberați memoria flash a smartphone-ului dvs

Cardurile microSD(HC) utilizate în smartphone-uri sunt formatate în FAT32 în mod implicit. Acesta este principalul obstacol în calea instalării aplicațiilor pe ele și a transferului de date din memoria internă. Pentru a o depăși, trebuie să creați o partiție pe card cu ext3 sau ext4. Toate atributele fișierului (inclusiv dreptul de proprietar și de acces) pot fi transferate către acesta, astfel încât orice aplicație poate funcționa ca și cum ar fi fost lansată din memoria internă.

Windows nu știe cum să creeze mai mult de o partiție pe unități flash, dar pentru aceasta puteți rula Linux (cel puțin într-o mașină virtuală) sau un utilitar avansat pentru a lucra cu partiționarea logică - de exemplu, MiniTool Partition Wizard Free. După ce a descoperit o partiție primară suplimentară cu ext3/ext4 pe card, aplicația Link2SD și altele similare vor oferi mult mai multe opțiuni decât în ​​cazul unei singure partiții FAT32.


Un alt argument în favoarea alegerii FAT32 este adesea citat ca lipsa sa de jurnalizare, ceea ce înseamnă operații de scriere mai rapide și mai puțină uzură a celulelor de memorie NAND Flash. În practică, utilizarea FAT32 duce la invers și dă naștere la multe alte probleme.

Unitățile flash și cardurile de memorie mor rapid din cauza faptului că orice modificare a FAT32 determină suprascrierea acelorași sectoare în care se află două lanțuri de tabele de fișiere. Am salvat întreaga pagină web și a fost suprascrisă de o sută de ori - cu fiecare adăugare a unui alt GIF mic pe unitatea flash. Ai lansat un software portabil? Acesta creează fișiere temporare și le modifică constant în timpul rulării. Prin urmare, este mult mai bine să utilizați NTFS pe unități flash cu tabelul $MFT rezistent la eșec. Fișierele mici pot fi stocate direct în tabelul principal de fișiere, iar extensiile și copiile sale sunt scrise în diferite zone ale memoriei flash. În plus, indexarea NTFS face căutarea mai rapidă.

INFO

Pentru FAT32 și NTFS, restricțiile teoretice privind nivelul de imbricare nu sunt specificate, dar în practică sunt aceleași: într-un director de prim nivel pot fi create doar 7707 subdirectoare. Cei cărora le place să joace păpuși matrioșca îl vor aprecia.

O altă problemă cu care se confruntă majoritatea utilizatorilor este că este imposibil să scrieți un fișier mai mare de 4 GB pe o partiție FAT32. Motivul este că în FAT32 dimensiunea fișierului este descrisă de 32 de biți în tabelul de alocare a fișierelor, iar 2^32 (minus unu, pentru a fi precis) este exact patru giga. Se pare că nici un film de calitate normală și nici o imagine DVD nu pot fi scrise pe o unitate flash proaspăt achiziționată.

Copierea fișierelor mari nu este atât de rău: atunci când încercați să faceți acest lucru, eroarea este cel puțin vizibilă imediat. În alte situații, FAT32 acționează ca o bombă cu ceas. De exemplu, ai copiat software portabil pe o unitate flash și la început îl folosești fără probleme. După mult timp, unul dintre programe (de exemplu, contabilitate sau e-mail), baza de date devine umflată și... pur și simplu se oprește actualizarea. Fișierul nu poate fi suprascris deoarece a atins limita de 4 GB.

O problemă mai puțin evidentă este că în FAT32 data creării unui fișier sau director poate fi specificată în două secunde. Acest lucru nu este suficient pentru multe aplicații criptografice care folosesc marcaje temporale. Precizia scăzută a atributului date este un alt motiv pentru care FAT32 nu este considerat un sistem de fișiere valid din punct de vedere al securității. Cu toate acestea, punctele sale slabe pot fi folosite și în propriile scopuri. De exemplu, dacă copiați orice fișier dintr-o partiție NTFS pe un volum FAT32, acestea vor fi șterse de toate metadatele, precum și de permisiunile moștenite și setate special. FAT pur și simplu nu le suportă.

exFAT

Spre deosebire de FAT12/16/32, exFAT a fost dezvoltat special pentru USB Flash și carduri de memorie mari (≥ 32 GB). FAT extins elimină dezavantajul menționat mai sus al FAT32 - suprascrierea acelorași sectoare cu orice modificare. Ca sistem pe 64 de biți, nu are limite practic semnificative asupra dimensiunii unui singur fișier. Teoretic, poate avea o lungime de 2^64 de octeți (16 EB), iar cardurile de această dimensiune nu vor apărea curând.

O altă diferență fundamentală între exFAT este suportul pentru listele de control al accesului (ACL). Acesta nu mai este același simplist din anii nouăzeci, dar natura închisă a formatului împiedică implementarea exFAT. Suportul ExFAT este implementat integral și legal numai în Windows (începând cu XP SP2) și OS X (începând cu 10.6.5). Pe Linux și *BSD este acceptat fie cu restricții, fie nu tocmai legal. Microsoft necesită licență pentru utilizarea exFAT și există multe controverse juridice în acest domeniu.

Btrfs

Un alt reprezentant proeminent al sistemelor de fișiere bazate pe arbori B se numește Btrfs. Acest FS a apărut în 2007 și a fost creat inițial în Oracle pentru a lucra cu SSD-uri și RAID-uri. De exemplu, poate fi scalat dinamic: creând noi inoduri direct pe sistemul care rulează sau împărțind un volum în subvolume fără a le aloca spațiu liber.

Mecanismul de copiere pe scriere implementat în Btrfs și integrarea completă cu modulul de kernel Device Mapper vă permit să faceți instantanee aproape instantanee prin dispozitive cu bloc virtual. Precomprimarea (zlib sau lzo) și deduplicarea accelerează operațiunile de bază, prelungind și durata de viață a memoriei flash. Acest lucru este vizibil mai ales atunci când lucrați cu baze de date (se realizează compresia de 2-4 ori) și fișiere mici (sunt scrise în blocuri mari ordonate și pot fi stocate direct în „frunze”).

Btrfs acceptă, de asemenea, modul de înregistrare completă (date și metadate), verificarea volumului fără demontare și multe alte caracteristici moderne. Codul Btrfs este publicat sub licență GPL. Acest sistem de fișiere a fost acceptat ca stabil în Linux începând cu versiunea de kernel 4.3.1.

Jurnalele de bord

Aproape toate sistemele de fișiere mai mult sau mai puțin moderne (ext3/ext4, NTFS, HFSX, Btrfs și altele) aparțin grupului general al celor jurnalizate, deoarece păstrează evidența modificărilor efectuate într-un jurnal separat (jurnal) și sunt verificate în raport cu acesta în evenimentul unei defecțiuni în timpul operațiunilor de disc. Cu toate acestea, granularitatea înregistrării și toleranța la erori ale acestor sisteme de fișiere diferă.

Ext3 acceptă trei moduri de înregistrare: în buclă închisă, ordonat și complet. Primul mod implică înregistrarea doar a modificărilor generale (metadate), efectuate asincron în raport cu modificările în datele în sine. În al doilea mod, se realizează aceeași înregistrare a metadatelor, dar strict înainte de a face orice modificări. Al treilea mod este echivalent cu înregistrarea completă (modificări atât în ​​metadate, cât și în fișierele în sine).

Doar ultima opțiune asigură integritatea datelor. Cele două rămase doar accelerează detectarea erorilor în timpul scanării și garantează restabilirea integrității sistemului de fișiere în sine, dar nu și a conținutului fișierelor.

Jurnalizarea în NTFS este similară cu al doilea mod de înregistrare în ext3. Doar modificările metadatelor sunt înregistrate în jurnal, iar datele în sine se pot pierde în cazul unei erori. Această metodă de înregistrare în NTFS nu a fost concepută ca o modalitate de a obține fiabilitatea maximă, ci doar ca un compromis între performanță și toleranța la erori. Acesta este motivul pentru care oamenii care sunt obișnuiți să lucreze cu sisteme complet jurnalizate iau în considerare pseudo-jurnalizarea NTFS.

Abordarea implementată în NTFS este în anumite privințe chiar mai bună decât cea implicită în ext3. În plus, NTFS creează periodic puncte de control pentru a se asigura că toate operațiunile de disc amânate anterior sunt finalizate. Punctele de control nu au nicio legătură cu punctele de recuperare din \Informații despre volumul sistemului\ . Acestea sunt doar intrări în jurnalul de service.

Practica arată că o astfel de jurnalizare NTFS parțială este în majoritatea cazurilor suficientă pentru o funcționare fără probleme. La urma urmei, chiar și cu o întrerupere bruscă de curent, dispozitivele de disc nu își pierd puterea instantaneu. Sursa de alimentare și numeroșii condensatori din unități oferă doar cantitatea minimă de energie care este suficientă pentru a finaliza operația de scriere curentă. Cu SSD-urile moderne, cu viteza și eficiența lor, aceeași cantitate de energie este de obicei suficientă pentru a efectua operațiuni în așteptare. O încercare de a trece la înregistrarea completă ar reduce viteza majorității operațiunilor în mod semnificativ.

Conectarea fișierelor terță parte în Windows

Utilizarea sistemelor de fișiere este limitată de suportul acestora la nivelul sistemului de operare. De exemplu, Windows nu înțelege ext2/3/4 și HFS+, dar uneori este necesar să le folosiți. Acest lucru se poate face prin adăugarea driverului corespunzător.

AVERTIZARE

Majoritatea driverelor și pluginurilor pentru suportul sistemelor de fișiere terțe au limitările lor și nu funcționează întotdeauna stabil. Acestea pot intra în conflict cu alte drivere, antivirusuri și programe de virtualizare.

Un driver deschis pentru citirea și scrierea partițiilor ext2/3 cu suport parțial pentru ext4. Cea mai recentă versiune acceptă extensii și partiții de până la 16 TB. LVM, listele de control al accesului și atributele extinse nu sunt acceptate.


Există un plugin gratuit pentru Total Commander. Suportă citirea partițiilor ext2/3/4.


coLinux este un port deschis și liber al nucleului Linux. Împreună cu un driver pe 32 de biți, vă permite să rulați Linux pe Windows de la 2000 la 7 fără a utiliza tehnologii de virtualizare. Acceptă numai versiuni pe 32 de biți. Dezvoltarea unei modificări pe 64 de biți a fost anulată. CoLinux vă permite, de asemenea, să organizați accesul la partițiile ext2/3/4 din Windows. Sprijinul pentru proiect a fost suspendat în 2014.

Este posibil ca Windows 10 să aibă deja suport încorporat pentru sistemele de fișiere specifice Linux, este doar ascuns. Aceste gânduri sunt sugerate de driverul la nivel de kernel Lxcore.sys și de serviciul LxssManager, care este încărcat ca bibliotecă de procesul Svchost.exe. Pentru mai multe informații despre acest lucru, vezi raportul lui Alex Ionescu „The Linux Kernel Hidden Inside Windows 10”, pe care l-a prezentat la Black Hat 2016.


ExtFS pentru Windows este un driver plătit produs de Paragon. Funcționează pe Windows 7 până la 10 și acceptă accesul de citire/scriere la volumele ext2/3/4. Oferă suport aproape complet pentru ext4 pe Windows.

HFS+ pentru Windows 10 este un alt driver proprietar produs de Paragon Software. În ciuda numelui, funcționează în toate versiunile de Windows, începând de la XP. Oferă acces complet la sistemele de fișiere HFS+/HFSX pe discuri cu orice aspect (MBR/GPT).

WinBtrfs este o dezvoltare timpurie a driverului Btrfs pentru Windows. Deja în versiunea 0.6 acceptă atât accesul de citire, cât și de scriere la volumele Btrfs. Poate gestiona legături rigide și simbolice, acceptă fluxuri de date alternative, ACL-uri, două tipuri de compresie și modul de citire/scriere asincron. În timp ce WinBtrfs nu știe cum să folosească mkfs.btrfs, btrfs-balance și alte utilitare pentru a menține acest sistem de fișiere.

Capacități și limitări ale sistemelor de fișiere: tabel rezumativ

Sistemul de fișiere Dimensiunea maximă a volumului Limitați dimensiunea unui fișier Lungimea numelui corect al fișierului Lungimea numelui complet al fișierului (inclusiv calea de la rădăcină) Limitați numărul de fișiere și/sau directoare Acuratețea datei fișierului/directorului Drepturi dos-tu-pa Legături dure Legături simbolice Instantanee Comprimarea datelor în fundal Criptarea datelor în fundal Bunicul-ple-ka-ţiune de date
FAT16 2 GB în sectoare de 512 octeți sau 4 GB în clustere de 64 KB 2 GB 255 de octeți cu LFN
FAT32 8 TB sectoare a câte 2 KB fiecare 4 GB (2^32 - 1 octet) 255 de octeți cu LFN până la 32 de subdirectoare cu CDS 65460 10 ms (creare) / 2 s (modificare) Nu Nu Nu Nu Nu Nu Nu
exFAT ≈ 128 PB (2^32-1 clustere de 2^25-1 octeți) teoretic / 512 TB din cauza restricțiilor terțelor părți 16 EB (2^64 - 1 octet) 2796202 în catalog 10 ms ACL Nu Nu Nu Nu Nu Nu
NTFS 256 TB în clustere de 64 KB sau 16 TB în clustere de 4 KB 16 TB (Win 7) / 256 TB (Win 8) 255 de caractere Unicode (UTF-16) 32.760 de caractere Unicode, până la maximum 255 de caractere per element 2^32-1 100 ns ACL da da da da da da
HFS+ 8 EB (2^63 octeți) 8 EB 255 de caractere Unicode (UTF-16) nu limitate separat 2^32-1 1 s Unix, ACL da da Nu da da Nu
APFS 8 EB (2^63 octeți) 8 EB 255 de caractere Unicode (UTF-16) nu limitate separat 2^63 1 ns Unix, ACL da da da da da da
Ext3 32 TB (teoretic) / 16 TB în clustere de 4 KB (datorită limitărilor programelor e2fs) 2 TB (teoretic) / 16 GB pentru programe mai vechi 255 de caractere Unicode (UTF-16) nu limitate separat 1 s Unix, ACL da da Nu Nu Nu Nu
Ext4 1 EB (teoretic) / 16 TB în clustere de 4 KB (datorită limitărilor programelor e2fs) 16 TB 255 de caractere Unicode (UTF-16) nu limitate separat 4 miliarde 1 ns POSIX da da Nu Nu da Nu
F2FS 16 TB 3,94 TB 255 de octeți nu limitate separat 1 ns POSIX, ACL da da Nu Nu da Nu
BTRFS 16 EB (2^64 - 1 octet) 16 EB 255 de caractere ASCII 2^17 octeți 1 ns POSIX, ACL da da da da da da

Primele dezvoltări ale sistemului de fișiere ReFS au apărut în 2012 direct în Windows Server 2012. Acum tehnologia este văzută în sistemele de operare Windows 8 și 10 ca înlocuitor pentru NTFS. Trebuie să vă dați seama de ce ReFS este mai bun decât alte sisteme de fișiere și dacă poate fi utilizat pe computerele de acasă.

Conceptul de ReFS

ReFS (sistem de fișiere rezistent)– este o tehnologie tolerantă la erori care a înlocuit NTFS. Proiectat pentru a elimina deficiențele predecesorului său și pentru a reduce cantitatea de informații care pot fi pierdute în timpul diferitelor operațiuni. Acceptă lucrul cu fișiere mari.

Deci, unul dintre avantajele tehnologiei este securitatea ridicată a datelor împotriva distrugerii. Media conține sume de control și metadate concepute pentru a determina integritatea datelor de pe partiții. Scanarea are loc în timpul operațiunilor de citire/scriere și detectează imediat fișierele deteriorate.

Beneficiile ReFS

Sistemul de fișiere ReFS (FS) are următoarele caracteristici:

  1. Productivitate mare;
  2. Îmbunătățirea capacității de a verifica mass-media pentru erori;
  3. Gradul scăzut de pierdere de date atunci când apar erori ale sistemului de fișiere și blocuri proaste;
  4. Implementarea criptării EFS;
  5. Funcționalitate de cotă de disc;
  6. Limita maximă de fișiere crescută la 18,3 EB;
  7. Creșterea numărului de fișiere stocate într-un folder la 18 trilioane;
  8. Capacitate maximă de disc până la 402 EB;
  9. Numărul de caractere din numele fișierului a fost crescut la 32767.

Există, desigur, multe oportunități, dar asta nu este tot. Cu toate acestea, merită luat în considerare un punct: cât de utile vor fi toate aceste avantaje pentru utilizatorul obișnuit?

Pentru un utilizator care lucrează pe un computer acasă, singurul lucru care va fi util este viteza rapidă de verificare a partițiilor pentru erori și reducerea pierderii de fișiere în cazul acestor erori. Desigur, în acest caz, securitatea se realizează numai la nivelul sistemului de fișiere, adică își rezolvă doar propriile probleme, iar problema pierderii fișierelor importante rămâne încă o problemă presantă. De exemplu, acest lucru se poate întâmpla din cauza unei defecțiuni a hard diskului. Tehnologia are cel mai mare efect în.

Avantajul RAID este toleranța ridicată la erori și siguranța datelor, precum și viteza mare de operare, cele mai utilizate niveluri RAID sunt 1 și 2. Dezavantajele sistemului sunt costul ridicat al achiziției de echipamente, precum și timpul petrecut pe implementare. Cred că acest lucru nu este de nici un folos utilizatorului obișnuit decât dacă creează un server de acasă care funcționează 24/7.

Efectuarea de teste bazate pe ReFS și NTFS

Folosind instrumente software, a fost posibil să aflăm că utilizarea sistemului de fișiere ReFS în comparație cu NTFS nu oferă o creștere vizibilă a performanței. Testele bazate pe cicluri similare de citire și scriere care au loc pe aceleași dimensiuni de disc și fișiere, utilitarul Crystal Disk Mark a arătat rezultate identice. ReFS a avut un mic avantaj la copierea fișierelor mici.

Au fost teste folosind fișiere mari și o partiție lentă a hard diskului a fost folosită ca cobai. Rezultatele au fost dezamăgitoare, deoarece ReFS a arătat performanțe mai scăzute în comparație cu NTFS.

Nu există nicio îndoială că tehnologia este încă brută, indicatorii au fost realizati la sfârșitul anului 2017, dar în Windows 10 tehnologia poate fi utilizată pe scară largă. Cea mai bună opțiune pentru utilizarea FS ar fi bazată pe SSD – unități cu stare solidă. Aceste unități sunt mai bune decât HDD-urile în aproape toate punctele de vedere.

Beneficiile ReFS pentru alți utilizatori

Sistemul are o astfel de funcție ca un hipervizor - Hyper-V. Această tehnologie este o mașină virtuală. Când utilizați o partiție formatată în ReFS, a existat un avantaj în viteza de operare. Deoarece sistemul de fișiere utilizează sume de control și metadate, trebuie să se refere la ele doar atunci când copiază fișierele; dacă există o potrivire, nu trebuie să copieze fizic datele.

Crearea de discuri virtuale în ReFS durează câteva secunde. În NTFS, acest proces durează câteva minute. Discurile virtuale fixe în NTFS sunt create de întârzieri și încarcă puternic unitatea de disc; cu SSD-urile aceasta este o problemă și mai mare, deoarece un număr mare de cicluri de rescriere este „de moarte” pentru medii. Din acest motiv, lucrul în fundal cu alte aplicații va fi problematic.

De asemenea, este planificat ca ReFS să fie foarte compatibil cu mașinile virtuale precum VMware.

Dezavantajele sistemului de fișiere ReFS

Mai sus ne-am uitat la avantajele tehnologiei ReFS și am atins puțin despre dezavantaje. Să vorbim mai detaliat despre dezavantaje. Trebuie să înțelegem că până când Microsoft va implementa tehnologia în Windows, nu va exista nicio dezvoltare. Acum avem următoarele caracteristici:

  1. Partițiile Windows existente nu sunt eligibile pentru utilizare de către ReFS, adică numai partițiile care nu sunt utilizate pentru sistem trebuie utilizate, de exemplu, cele destinate stocării fișierelor.
  2. Unitățile externe nu sunt acceptate.
  3. Nu este posibil să convertiți un disc NTFS într-un disc ReFS fără a pierde date, ci doar formatați și faceți copii de rezervă ale fișierelor importante.
  4. Nu toate programele sunt capabile să recunoască acest sistem de fișiere.

Asta este. Acum uită-te la imaginea de mai jos. Acest Windows 7 și aici FS nu sunt recunoscute și apare o eroare la deschiderea partiției.

În Windows 8, partiția va trebui formatată, deoarece nici FS nu este recunoscut. Înainte de a utiliza un nou sistem de fișiere pe computerul de acasă, este mai bine să vă gândiți la consecințe de mai multe ori. În Windows 8.1, problema este rezolvată prin activarea FS folosind editorul de registry, dar acest lucru nu funcționează întotdeauna, mai ales că folosirea ReFS presupune formatarea discului și distrugerea datelor.

Apar unele probleme în Windows 10. Dacă noua partiție cu ReFS funcționează stabil, atunci cea existentă, care a fost formatată în ea, nu este recunoscută de Windows.

Cum se formatează un disc sau o partiție în ReFS

Să presupunem că utilizatorului nu îi pasă de deficiențele și deficiențele noului produs. Dumnezeu să vă binecuvânteze, prieteni, să începem să analizăm instrucțiunile pentru formatarea unei partiții în ReFS. Vă spun un lucru: dacă ceva se întâmplă brusc și partiția eșuează, puteți utiliza instrumentul R-Studio pentru a o restaura.

Acesta este interesant:

Pentru a formata, trebuie doar să urmați următoarea procedură:

  1. Deschideți „Acest PC” și faceți clic dreapta pe secțiunea dorită;
  2. În meniul contextual, faceți clic pe element "Format";
  3. În fereastra care se deschide, în câmpul „File system” găsim REFS;
  4. apasa butonul "ÎNCEPE" si asteapta.

Același lucru se poate face folosind linia de comandă, unde trebuie să introduceți următoarele comenzi una câte una:

  1. diskpart– utilitar pentru lucrul cu discuri;
  2. lis vol– afișați toate partițiile computerului;
  3. sel vol 3– unde 3 este numărul volumului necesar;
  4. format fs=refs– formatarea în sistemul de fișiere dorit.

Cum să activați ReFS folosind registry

Dacă nu aveți nimic care să indice FS, poate fi necesar să fie activat. Pentru aceasta avem nevoie de un editor de registry. Procedura funcționează corect pe Windows 8.1 și 10:

  1. Lansați editorul de registry (Win+R și introduceți regedit);
  2. Să mergem la acest subiect - HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem;
  3. În partea dreaptă a ferestrei, creați un parametru DWORD pe 32 de biți cu numele RefsDisableLastAccessUpdate;
  4. Introduceți numărul 1 ca valoare.
  5. Găsirea unei sucursale HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control;
  6. Creați o secțiune cu numele MiniNT

    După cum puteți vedea, capacitatea de a utiliza ReFS există, dar nu este recomandat să îl utilizați încă, mai ales că nu are sens pentru un computer de acasă. Recuperarea fișierelor pierdute va fi problematică și nu toate programele înțeleg FS.

    Cel mai probabil, tehnologia se va dezvolta cel mai mult pe servere, dar acest lucru nu se va întâmpla curând. Dacă ne amintim de apariția NTFS, implementarea sa completă a durat aproximativ șapte ani. Mai multe informații pot fi găsite pe site-ul oficial Microsoft - https://docs.microsoft.com/ru-ru/windows-server/storage/refs/refs-overview. Între timp, puteți urmări noile tehnologii IT pe site-ul nostru, nu uitați să vă abonați.

În 2012, Microsoft a decis să îmbunătățească sistemul de fișiere NTFS și a lansat o versiune de testare, mai fiabilă, a ReFS (Resilient File System).

Astăzi, acest format este disponibil pentru utilizatorii sistemelor de operare Windows 8/8.1 și Windows 10. Windows 7 și versiunile anterioare nu funcționează cu dispozitive cu acest format. Cum se schimbă formatul unei unități flash în ReFS în Windows 8/8.1 și Windows 10?

Avantajele și dezavantajele formatului ReFS

Acest sistem de fișiere are multe avantaje. Cu toate acestea, la fel ca în etapa inițială a dezvoltării NTFS, acestea sunt destul de șocante.

Printre avantajele ReFS merită evidențiate:

  • Locația fișierului catalogat;
  • Toleranța la erori, care este implementată prin procese de recuperare în fundal și de înregistrare. Totuși, în același timp, această calitate este și un dezavantaj. În esență, dacă unitatea eșuează, nu veți găsi niciun instrument pentru a o restaura.
  • Remediază automat erorile și corupția fișierelor.
  • Copiați, scrieți și mutați fișiere mari.
  • Suport pentru legături simbolice.
  • Viteză mare de transfer de date.

Dintre dezavantajele acestui sistem, merită subliniat:

  • Incompatibil cu sistemele de operare Windows 7 și versiuni anterioare;
  • Lipsa programelor de conversie;
  • Dimensiune fixă ​​a clusterului de 67 KB;
  • Fără cote;
  • Fără deduplicare (fișierele vor fi copiate în 2 sau mai multe copii).

Și deși avantajele sunt semnificative, sistemul de fișiere NTFS va ocupa o poziție de lider încă câțiva ani. Dacă aveți instalat Windows 8/8.1 sau Windows 10, puteți formata o unitate și puteți testa ReFS.

Formatați o unitate flash în ReFS

Pentru a formata o unitate în ReFS, trebuie să faceți modificări în Editorul de registru. Pentru a face acest lucru, apăsați „Win ​​+ R” și introduceți „regedit”.

Se va deschide Editorul Registrului. Accesați filiala „HKEY_LOCAL_MACHINE”, „SYSTEM”,

Faceți clic dreapta pe secțiune și selectați „Nou”, „Valoare DWORD”. Apelați parametrul „RefsDisableLastAccessUpdate” și setați valoarea la „1”.

În secțiunea „Control” a aceleiași ramuri, merită să creați o nouă secțiune. Să-i spunem „MiniNT”. În el creăm un parametru DWORD cu numele „AllowRefsFormatOverNonmirrorVolume” și valoarea „1”.

Reporniți computerul pentru ca modificările să intre în vigoare.

De asemenea, puteți formata unitatea folosind consola Disk Management. Pentru a face acest lucru, introduceți comanda „format e:/fs:refs”, apoi faceți clic pe „Da”.

Microsoft, după cum ați ghicit, a lansat următoarea versiune a celor zece cu numărul 16176. În mod ciudat, există ceva de zguduit în legătură cu această versiune, așa că să mergem.


În videoclipul anterior, mi s-a reproșat că lipsesc informații despre ReFS, ei bine, să ne corectăm. ReFS este un sistem de fișiere nou, ei bine, cum să spun nou, a existat chiar și în versiunile de previzualizare ale Windows 8.1, dar după aceea nu a mai intrat în uz. Versiunea actuală de Windows 10 nu acceptă ReFS, dar versiunile noi îl au. Sistemul de fișiere este un fel de marcare care determină modul în care va fi scris fiecare fișier. Avantajele sistemului de fișiere ReFS includ: toleranță ridicată la erori, izolarea instantanee a zonelor deteriorate și lucrul cu acestea prin Windows însuși, creșterea lungimii numelui fișierului și a căii către acesta la 32.767 de caractere și creșterea volumului maxim. dimensiune, care poate ajunge la 402 EB. Noul sistem de fișiere a moștenit tot ce este mai bun din NTFS și a introdus noi funcții pe care utilizatorii le-au solicitat.


Noua versiune include și suport pentru sunetul surround Dolby Atmos, da, acesta este sunet multicanal fără canale, indiferent cât de ciudat ar suna.


Subsistemul Linux vă permite acum să lucrați cu dispozitive care sunt conectate prin porturi COM.


Programele Music Groove și Cinema și TV au fost actualizate. Am adăugat transparență acestor programe. Dacă vă amintiți, acum aproximativ 2 săptămâni a sosit o actualizare pentru un număr limitat de utilizatori care a demonstrat o nouă interfață neon. Acum, judecând după comentarii, actualizarea 17032 a ajuns la toată lumea. Verificați Windows Store pentru actualizări.


De asemenea, conform informațiilor de la Windows Central, a devenit cunoscut faptul că Microsoft lucrează la caracteristica Tabbed Shell. Această funcționalitate vă permite să adăugați file în Explorer. Interfața este foarte asemănătoare cu browserul Edge. Se raportează că Tabbed Shell va fi o funcție încorporată în sistem și nu va fi dificil pentru dezvoltatori să o adapteze. Dacă aplicația nu este adaptată, sunt posibile artefacte, cum ar fi un grup dublu de butoane de sistem. Pare promițător.


Chiar și odată cu lansarea versiunii 16176, lista dispozitivelor mobile care acceptă Actualizarea creatorilor a devenit cunoscută. Veți vedea mai jos o listă de telefoane acceptate.

HP Elite x3
Microsoft Lumia 550
Microsoft Lumia 640/640XL
Microsoft Lumia 650
Microsoft Lumia 950/950 XL
Alcatel IDOL 4S
Alcatel OneTouch Fierce XL
SoftBank 503LV
VAIO Phone Biz
MouseComputer MADOSMA Q601
Trinity NuAns NEO

Telefoanele mai vechi precum 930 și 830 Lumiya acceptă versiunea Creators Update doar prin programul Windows Insider, dar noua versiune 15204 nu le mai acceptă. Istoria se repetă din nou, când telefoanele vechi nu au primit oficial Windows 10 Mobile, deși acesta putea fi descărcat prin Windows Insider, dar după aceea și magazinul a fost închis. E o rușine. Primele versiuni de Surface par să fi încetat abia de curând suportul, deși aceste dispozitive au apărut în urmă cu 5 ani și cumva șurubul este bătut în Lumiya. Deși build 15204 arată că versiunea mobilă a sistemului de operare ia o cale diferită și nu mai aparține familiei OneCore. În primul rând, este clar că acest lucru este destul de dificil și, în al doilea rând, Microsoft deschide calea pentru dispozitivele ARM care vor accepta o versiune completă a Windows 10.

Acestea sunt plăcintele.