Diskdefragmentering

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 22. juli 2021; checks kræver 23 redigeringer .

Defragmentering  er processen med omfordeling af fragmenter af filer og logiske strukturer af filsystemer på diske for at sikre en kontinuerlig sekvens af klynger .

I tilfælde af at bruge harddiske , på grund af defragmentering, læsning og skrivning af filer accelereres, og derfor driften af ​​programmer og operativsystemet . Dette opnås på grund af det faktum, at læsningen af ​​filer efter defragmentering udføres så lineært og kontinuerligt som muligt, uden yderligere bevægelser af harddiskhovedet for at søge efter og genforene fragmenter.

Solid-state-drev og flash-drev baseret på forskellige typer flash-hukommelse behøver ikke at defragmentere filsystemer. Desuden skader defragmentering flashhukommelsen til en vis grad, da sidstnævnte har et meget mere begrænset antal skrive-/omskrivningscyklusser end magnetiske diskdrev, når de bruges korrekt.

Terminologi

Datafragmentering  - opdeling af en fil i fragmenter af forskellige størrelser til skrivning til forskellige (ikke-konsekutive) områder på harddisken. Fragmentering bruges som regel, når det er nødvendigt at skrive en stor fil til en disk, hvor der ikke er nok kontinuerlig volumen, men den samlede ledige plads er nok (for eksempel på grund af sletning af tidligere optagede filer).

Årsager til filfragmentering

Grundlæggende årsager

Fragmentering af filsystemet er i sin essens et kompromis mellem enkelheden og hastigheden af ​​den indledende dumpning af data til disken og hastigheden og følgelig letheden ved at læse de samme data i fremtiden (hvilket i øvrigt, sker muligvis ikke meget snart med hensyn til processortid ).

Fragmentering er også en konsekvens af den aktive drift af filsystemet og computeren som helhed, baseret på ovenstående årsager.

Særlige lejligheder

Særligt bemærkelsesværdigt er den bevidste fragmentering af SSD'er af deres controller på det fysiske niveau, hvilket faktisk har en klart gavnlig effekt (se Fragmentering af Flash på det fysiske niveau ).

Konsekvenser

Når der er mange fragmenterede filer, falder hastigheden på drevet (især en harddisk eller diskette ) med fragmenterede filer, da der er forsinkelser i den fysiske bevægelse af harddiskhovedet mellem opdelte fragmenter [1] . Desuden bremser den generelle fragmentering af harddisken ikke kun hastigheden af ​​at arbejde med eksisterende filer, men bremser også som regel skrivningen af ​​nye betydeligt.

Typer af defragmentering

Udviklere af tredjepartsværktøjer forsøger at give brugerne forskellige algoritmer og defragmenteringsregler.

  • "Hurtig" defragmentering  - kun fragmenterede filer defragmenteres, ledig plads defragmenteres ikke. Kører flere gange hurtigere end en fuld defragmentering. Fremskynder arbejdet med eksisterende filer. Hastigheden af ​​at arbejde med oprettede eller ændrede filer er en smule accelereret. Følgende hjælpeprogrammer kan udføre sådan defragmentering: Piriform Defraggler .
  • Defragmentering af ledig plads  - defragmentering af kun ledig plads, mens filer forbliver fragmenterede, nogle gange endda mere end før defragmentering. Fremskynder skrivningen af ​​nye filer markant. Brugt yderst sjældent. De er i stand til at køre følgende hjælpeprogrammer: Piriform Defraggler , O&O Defrag [2] .
  • Fuld defragmentering  - både ledig plads og selve filerne defragmenteres på samme tid. Kan køre i flere timer på store diske. Fremskynder arbejdet med både nye og eksisterende filer. Det kan udføres af indbyggede Windows-værktøjer samt adskillige tredjepartsværktøjer. Når du bruger en SSD som et systemdrev i Windows 8 , 8.1 , 10 , er en sådan manuel defragmentering ikke tilgængelig fra standardværktøjet og er blevet erstattet af en optimering [3] - udførelse af trim -kommandoen .
  • "Optimering"  - udover (eller i stedet for) defragmentering flytter den fysisk små og/eller vigtige filer for systemet til begyndelsen af ​​disken (mere præcist, en partition) og/eller flytter store brugerfiler eller sjældent brugte filer til slutningen af ​​disken. Det kan give en lille stigning i harddiskens overordnede ydeevne og en ret betydelig acceleration ved brug af styresystemet fra denne disk [4] . En særlig form for sådan optimering kan udføres automatisk af Windows ved OS-start. De er i stand til at køre følgende hjælpeprogrammer: MyDefrag , O&O Defrag [2] .

Separat er det værd at forklare den førnævnte defragmentering ved Windows -start [5] . På nuværende tidspunkt er det kun vigtige systemfiler, der defragmenteres. Brugeren har som regel ikke mulighed for at kontrollere denne proces. Sænker en smule processen med at starte operativsystemet, men eliminerer praktisk talt en betydelig stigning i boottid i fremtiden, for eksempel efter en vellykket systemopdatering. Hvis du deaktiverer denne mulighed gennem Windows-registreringsdatabasen , vil OS-starttiden falde en smule i starten, men over tid kan den hurtigt stige med aktiv brug af computeren, selvom almindelig generel defragmentering udføres ved hjælp af OS-værktøjer (især på Windows XP og nedenfor), da de fleste systemfiler under systemdrift kan beskyttes mod direkte adgang, eller klassisk defragmentering er ikke så vigtig for dem.

Kendte begrænsninger

Sammenfattende ovenstående begrænsninger kan defragmenteringen af ​​nogle filer (f.eks. swap-filen eller registreringsdatabasen) ikke forekomme under den direkte drift af systemet (uden yderligere "tweaks" [6] af systemregistret ). Til sådanne formål kan du bruge multi-boot-værktøjer , ændre registreringsdatabasen eller defragmentere disse filer fra et andet OS (f.eks. Linux ).

Behovet for defragmentering

For filsystemer

Defragmentering er oftest påkrævet for filsystemer såsom File Allocation Table (FAT16, FAT32) til MS-DOS og NTFS -operativsystemer til Microsoft Windows , da programmer til at arbejde med dem normalt ikke internt giver nogen midler til at forhindre fragmentering (med sjældne undtagelser er KillCopy og TeraCopy [7] ), og det vises ofte selv på en næsten tom disk og en lille filindlæsning.

Nogle filsystemer giver indbygget fragmenteringsreduktion (se Fragmentering i ext4 ), mens de opretholder en anstændig disk- og journalføringsydelse (se Journalføring i ext4 ). Et eksempel på et sådant filsystem er ext4 , dog er fuld support og arbejde med det kun muligt fra Linux -miljøet (se ext4 support ).

Til forskellige medier

Fragmentering er ikke nødvendigvis negativ. Nogle gange bruges det med vilje til at øge SSD'ens levetid - det er her trimkommandoen  kommer i spil . Det er værd at overveje, at fragmentering kan overvejes på forskellige niveauer: på filsystemniveau (logisk) og på drevniveau (fysisk, kun SSD-controlleren er ansvarlig for det , se Mikrocontroller ). Ofte er brugeren af ​​en SSD ikke engang opmærksom på en sådan fragmentering, og den bruges til jævnt at slide enhedens hukommelsesceller (se Wear leveling ). Men selv på solid state-drev har Windows 8 og nyere (i nogle tilfælde) tendens til at defragmentere på filsystemniveau [8] . Det er dog så sjældent, at du ikke skal bekymre dig om det - ressourcen til moderne SSD'er er meget høj, og stabiliteten af ​​operativsystemet er ekstremt vigtig for næsten alle brugere.

Harddisk sundhed

Ud over at bremse computeren i dens filoperationer (såsom læsning og skrivning), påvirker kronisk filfragmentering harddiskens "sundhed" negativt, da det får diskens positioneringshoveder til konstant at bevæge sig, som udfører læsning og skrive data. Dette kan forkorte levetiden for den bevægelige hovedenhed og øge temperaturen inde i HDD'en , hvilket kan føre til endnu hurtigere slid på harddiskens hardware.

Til flashhukommelse og dens controller

Flash-hukommelse er direkte adgangshukommelse, hvor adgangstiden til enhver celle er relativt lille og den samme uanset dens adresse , og skriver data i den såkaldte scattershot-mode, når kun hukommelsescontrolleren selv kender til den reelle placering af fragmenterne. Derudover kan cellerne i halvlederdrev kun modstå et begrænset antal skrivecyklusser, så at udføre en normal defragmentering på flashdrev og SSD'er er ikke kun ineffektivt, men også skadeligt på nogle måder [9] . Defragmenteringsprogrammer kan fremskynde ydeevnen af ​​en SSD , men uden at ty til den klassiske defragmentering af filsystemet (eller minimere det) [9] .

Temperaturkontrol

Som forklaret ovenfor, selvom SSD- fragmentering er af dobbelt karakter (på grund af en vis begrænsning af omskrivningsressourcen), bør man ikke glemme et meget vigtigere fænomen, såsom en stigning i temperaturen på hukommelsescellechipsene og især, kontrolmikrocontrolleren . _ _ Dette er endnu en grund til at tage omfattende foranstaltninger (for eksempel kompetent kabelstyring og passende computerkøling ) for at forbedre tilstanden af ​​drev under systemdrift og ikke kun føre optegnelser over registrerede data [10] .

Software

For at eliminere fragmentering er der specielle hjælpeprogrammer (defragmenteringsprogrammer), hvis princip er at "samle" hver fil fra dens fragmenter og derefter placere den i den mest fordelagtige position for OS og brugeren. En almindelig ulempe ved sådanne programmer er deres langsomme drift - defragmenteringsprocessen kan tage meget lang tid (op til flere timer). For solid state-drev er der en speciel kommando, der optimerer arbejdet uden at ty til gensortering af filfragmenter - trim .

Filsystemer

  • FAT : MS-DOS 6.x og Windows 9x indeholder hjælpeprogrammet Defrag. DOS-versionen er baseret på Norton SpeedDisk , Windows-versionen er baseret på Diskeeper .
  • NTFS : Windows NT 5 og nyere indeholder en defragmentering baseret på Diskeeper . Windows NT 4 og tidligere havde ikke indbyggede defragmenteringsværktøjer [11] .
  • ext2 bruger e2defrag- defragmenteringen .
  • ext3  : e2defrag kan kun fungere med ext3, hvis det midlertidigt konverteres til ext2. I stedet kan du bruge en filsystemuafhængig defragmentering, såsom Shake [12] .
  • ext4  : e4defrag , som virker ved at skabe omfang og flytte filer ind i dem.
  • XFS : Online defragmentering xfs_fsr .
# xfs_fsr -v /dev/sdX1
  • Oplysninger om filfragmentering kan fås ved hjælp af værktøjet filefrag fra pakken e2fsprogs .

Manuel defragmentering og forebyggelse af fragmentering

På trods af det faktum, at der er ret intelligente programmer blandt programmer af denne art, kan en god defragmentering (for et ikke-systemdrev) udføres på egen hånd. For at gøre dette er det nok at oprette en ny partition med filsystemet på disken og derefter blot kopiere de filer, der vil blive gemt på den, til denne logiske disk . Under sådan kopiering til en tom disk skrives data sekventielt med ringe eller ingen fragmentering. Derudover tager processen med at skrive filer flere gange mindre tid end defragmentering ved hjælp af programmer.

Indvirkning af brugervaner på fragmentering

Kendskab til filstrukturen og principperne for harddiskdrift er med til i høj grad at reducere filfragmentering på grund af den korrekte tilrettelæggelse af brugerens arbejde. Denne organisation består i, at de filer, der formodes at blive gemt i lang tid, først bliver skrevet til en tom disk: yndlingsfilm, arkiver, musik. De samme filer, der ikke er planlagt til at blive gemt i lang tid, er det bedre at skrive til slutningen af ​​disken: sletning af dem vil ikke forårsage opdeling af andre filer. Men denne tilgang er kun anvendelig til ikke-systemdrev (og i mindre grad til forskellige partitioner af det samme drev; dette skyldes både den relative fysiske placering af data på magnetiske diske og den hyppige begrænsning af antallet af partitioner med MBR -partitionsstilen, der stadig er efterspurgt [13] ), og defragmentering af systempartitionen er stadig mere effektiv og lettere at udføre med specielle hjælpeprogrammer.

Andre hjælpemetoder

Det hjælper at bruge en separat partition og/eller volumen [14] [15] til ofte ændrede . For eksempel, i Unix-lignende operativsystemer er brugerdata og indstillinger ( /home directory ), midlertidige filer (/tmp), protokoller , caches osv. (/var) ofte placeret på separate partitioner ; se også FHS .

Hjælp til moderne operativsystemer til defragmentering

Windows 7 og nyere med visse indstillinger [16] er i stand til at defragmentere, optimere systemfiler, planlagt vedligeholdelse af SSD'er [17] og også når pc'en er inaktiv.

Noter

  1. Joe Kinsella Impact of Disk Fragmentation Arkiveret 21. oktober 2017 på Wayback Machine
  2. ↑ 1 2 Standard defragmenteringsmetoder O&O Software . docs.oo-software.com . Hentet 2. januar 2022. Arkiveret fra originalen 2. januar 2022.
  3. Hvordan aktiverer man TRIM til SSD i Windows og kontrollerer, om TRIM-understøttelse er aktiveret  (russisk)  ? . reparation.pro . Hentet 2. januar 2022. Arkiveret fra originalen 2. januar 2022.
  4. Windows Vista Task Scheduler Secrets  (russisk)  ? . www.outsidethebox.ms _ Hentet 5. december 2020. Arkiveret fra originalen 24. september 2020.
  5. Defragmentering ved indlæsning af Windows | Windows Encyclopedia . winddata.ru. Hentet 9. januar 2019. Arkiveret fra originalen 10. januar 2019.
  6. XP Tweaker russisk udgave . xptweak.sourceforge.net . Hentet 2. januar 2022. Arkiveret fra originalen 2. januar 2022.
  7. [Plugin-anmodningskopi uden filfragmentering :: Total Commander] . forum.wincmd.ru. Hentet 13. januar 2019. Arkiveret fra originalen 18. januar 2022.
  8. Hvorfor defragmenterer Windows 10, 8.1 og 8 din SSD, og ​​hvordan undgår man det  (russisk)  ? . www.outsidethebox.ms _ Hentet 21. november 2020. Arkiveret fra originalen 29. oktober 2020.
  9. 1 2 Fragging vidunderlig: Sandheden om at defragmentere din SSD . Hentet 20. oktober 2017. Arkiveret fra originalen 22. august 2017.
  10. Ændring i hastigheden på m.2-drevet fra en ændring i køling (m.2-overophedning) - YouTube . www.youtube.com . Hentet 7. januar 2021. Arkiveret fra originalen 13. juli 2020.
  11. Diskdefragmenteringsbegrænsninger i Windows 2000, Windows XP og Windows Server  2003 . Hjælp og support . Microsoft (24. januar 2007). Hentet 27. september 2007. Arkiveret fra originalen 8. februar 2012.
  12. Vleu.net: ShakE . Hentet 27. september 2007. Arkiveret fra originalen 12. september 2007.
  13. Hvordan finder man ud af en GPT- eller MBR-disk på en computer  (russisk)  ? . reparation.pro . Hentet 4. december 2020. Arkiveret fra originalen 18. januar 2021.
  14. Håndtering af volumener og partitioner . help.gnome.org _ Hentet 20. januar 2022. Arkiveret fra originalen 20. januar 2022.
  15. Volume type logisk eller grundlæggende - 4apple.org  (russisk)  ? . Hentet 20. januar 2022. Arkiveret fra originalen 20. januar 2022.
  16. Hvordan defragmenteres diske i Windows  (russisk)  ? . www.outsidethebox.ms _ Hentet 4. december 2020. Arkiveret fra originalen 29. oktober 2020.
  17. Windows Task Scheduler Secrets - Automatic Maintenance  (russisk)  ? . www.outsidethebox.ms _ Hentet 5. december 2020. Arkiveret fra originalen 29. oktober 2020.

Litteratur

  • Peter Norton. Peter Nortons komplette guide til DOS 6.22. - Sams, 1994. S. 521. ISBN 0-672-30614-X
  • Woody Leonhard, Justin Leonhard. Windows XP tidsbesparende teknikker til dummies. — 2. udg. - For Dummies, 2005. - 590 s. — ISBN 978-0764578830 .
  • Craig Jensen. Fragmentering: Tilstanden, årsagen, helbredelsen. Executive Software International, 1994. ISBN 0-9640049-0-9
  • Dave Kleiman, et al. Winternals Feltvejledning til defragmentering, gendannelse og administration. - Syngress, 2006. - 512 s. — ISBN 978-1597490795 .
  • Drew Robb. Serverdiskhåndtering i et Windows-miljø. - Auerbach Publications, 2003. - 280 s. — ISBN 978-0849324321 .

Links