ntfs fragmentare

La început, acesta a susținut că NTFS nu este expus la dosar fragmentare. Nu era în întregime adevărat, iar declarația sa schimbat - NTFS previne fragmentarea. Sa dovedit că acest lucru nu este adevărat. Adică, este, desigur, pentru a preveni, dar sensul este aproape de zero ... Este acum clar că NTFS - un sistem care este ca nici un alt este predispus la fragmentare, ceea ce nu ar fi susținut în mod oficial. Singurul lucru pe care - în mod logic, ea nu într-adevăr suferă de ea. Toate structurile interne sunt construite într-un mod care nu împiedică fragmentarea rapid găsi fragmente de date. Dar, de efectele fizice ale fragmentării - mișcări ale capului suplimentare - bineînțeles că nu ajută. Și așa - transmite melodia ...

NTFS - sistem foarte economic. Dimensiunea Cluster mod rezonabil minim - de obicei 4 KB (unități la standardul sunt acum într-o duzină sau doi gigabytes). După cum se știe, sistemul de cele mai multe fragmente toate fișierele atunci când spațiul liber este de peste, atunci când trebuie să utilizați mici găuri rămase de la alte fișiere. Aici există prima proprietate NTFS, care promovează în mod direct fragmentare gravă.

NTFS unitate este împărțit în două zone. La începutul discului este zona MFT - o zonă care este în creștere MFT, Master File Table. Zona are un minim de 12% a discului, și înregistrarea datelor în acest domeniu, este imposibil. Acest lucru se face pentru a fi fragmentate, chiar dacă MFT. Dar când restul discului este plin - zona este redusă exact de două ori :). Și așa mai departe. Deci, nu avem unitatea de one-stop pentru a finaliza câteva. Ca urmare, în cazul în care NTFS conduce lucrări atunci când este umplut până la aproximativ 90% - fragmentarea creste ca un nebun.

Urca un rezultat - discul umplut mai mult de 88%, defragmenta aproape imposibil - chiar și API defragmentarea nu se pot muta datele în zona MFT. Se poate ca noi nu avem spațiu de manevră.

În continuare. NTFS lucrează în prezent în sus și să fie difuzate și toate încă fragmentate. Acest lucru este facilitat de algoritmul ciudat de a găsi spațiu liber - a doua omisiune gravă. Dacă fișierul este scris în bucăți mari - totul este în regulă. Dar dacă fișierul crește încet - algoritmul este: luat orice anumit volum al discului și fișierul este umplut până la capăt. Și un algoritm foarte interesant: completați mai întâi găuri mari, apoi mici. Ie distribuția tipică de mărimea fragmentelor pe fișiere NTFS fragmentat arata ca acest lucru (dimensiuni de fragmente):

16 - 16 - 16 - 16 - 16 - [rase acum] - 15 - 15 - 15 - [inapoi] - 14-14 - 14 .... De 1 - 1 la 1 -1-1 ...

Deci, procesul se duce la cele mai mici găuri din 1 grup, în ciuda faptului că discul sigur există bucăți mult mai mari de spațiu.

Poate am uitat să scrie altceva ... sensul că nu se poate spune că NTFS previne fragmentarea fișierului. Dimpotrivă, ea cu placere fragmentele lor. NTFS Fragmentarea după o jumătate de an de lucru va duce la o adevărată surpriză cineva familiarizat cu funcționarea sistemului de fișiere. Prin urmare, este necesar pentru a rula defragmentatorul. Dar acest lucru este toate problemele noastre nu se termina aici, dar, din păcate, este doar începutul ...

În NT există standardul defragmentarea API. Ea are o limitare interesantă pentru a muta blocuri de fișiere: (!), La un moment dat poate fi mutat cel puțin 16 clustere, iar aceste grupuri ar trebui să pornească de la o poziție care este un multiplu de 16 clustere în fișierul. In general, se efectuează intervenția chirurgicală exclusiv 16 clustere. consecinţe:

  • Spatiul gaura de mai puțin de 16 clustere nu se poate mișca nimic (altele decât fișiere comprimate, dar această subtilitate).
  • Fișierul mutat într-o altă locație, lăsând în urmă (în noua locație), „ocupat temporar spațiu“ completarea dimensiunii sale in multipli de 16 clustere.
  • Când încercați să cumva greșit ( „nu este un multiplu de 16„) pentru a muta fișierul rezultatul este de multe ori imprevizibil. Ceva este rotunjit, ceva pur si simplu nu se mișcă. Cu toate acestea, toată scena dispersează cu generozitate „loc de muncă temporară.“ Probabil având grijă de noi, așa că am scăpat din acest loc - algoritmul Defrag nu clin. )
  • „Spațiu temporar ocupat“ este eliberat după un anumit timp, de obicei, undeva într-o jumătate de minut. Gee.

Cu toate acestea, ar fi logic să se utilizeze acest API. Și-l utilizați. Prin urmare, procesul standard de defragmentare cu ajustări pentru limitări ale API-ului, următoarele faze sunt, nu neapărat în această ordine:

Să presupunem că vrem să pună fișierele într-un rând la începutul discului. Pune-un singur fișier. El lasă suplimentările de muncă coada multiplicității 16. Pune următoarea - după coada, desigur. După ceva timp, eliberarea cozii, au o gaură <16 кластеров размером. Которую потом невозможно заполнить через API дефрагментации! В результате, до оптимизации картина свободного места выглядела так: много дырок примерно одинакового размера. После оптимизации — одна дыра в конце диска, и много маленьких <16 кластеров дырок в заполненном файлами участке. Какие места в первую очередь заполняются? Правильно, находящиеся ближе к началу диска мелкие дырки <16 кластеров… Любой файл, плавно созданный на прооптимизированном диске, будет состоять из дикого числа фрагментов. Да, диск потом можно оптимизировать снова. А потом еще раз. и еще. и так — желательно каждую неделю. Бред? Реальность.

Astfel, există două realizări aproximativ echivalente. Primul - de multe ori optimiza disc defragmenter astfel încât, smerindu în același timp, cu fragmentare sălbatic fișierele create re. A doua opțiune - nu atinge nimic, și să accepte uniforma, dar mult mai slab fragmentarea fișierelor de pe disc.

Deși există un program de defragmentare, care ignoră API defragmentarea și funcționează ca ceva mai direct - Norton Speeddisk 5.0 pentru NT. Atunci când încearcă să-l compare cu restul - Diskeeper, OO Defrag etc. - nici o mențiune a șefului, cea mai fundamentală, diferențele. Doar pentru că această problemă este ascunsă cu grijă, cel puțin cu siguranță nu face publicitate la fiecare pas. Speeddisk - doar astazi un program care poate optimiza întregul disc, fără a crea bucăți mici de spațiu gol. Este demn de mentionat, de asemenea, că API-ul standard nu poate defragmenta volume NTFS cu un grup de mai mult de 4 kilobytes - și SpeedDisk, încă mai pot.