Anonim

Så, jeg var nysgjerrig på, av alle ting, filsystemer. Jeg er klar over at dette er veldig nerdete for meg, men siden jeg fikk Mac-en var jeg nysgjerrig på om jeg måtte bekymre meg for slike ting som defragmentering. Windows-brukere vet at du trenger å defragmentere harddisken hver gang for å holde datamaskinen i gang. I verden av Mac sies det at du ikke trenger å defragere. Hvorfor er det sånn?

Så jeg bestemte meg for å se på de forskjellige typene filsystemer og se etter et svar. Er filsystemet Windows bruker ansvarlig for vanskene?

De forskjellige filsystemene

File Allocation Table (FAT). Dette er et filsystem utviklet av Microsoft for MS-DOS og ble brukt opp til Windows ME. En plate formatert ved hjelp av FAT består av en oppstartssektor, filtildelingstabeller og dataene. Oppstartsektoren inneholder koden som er nødvendig for at datamaskinen din kan starte opp. Filfordelingstabellene er en kartlegging av hvor på platen visse filer og kataloger ligger. Da har du dataene dine selv. Problemet med FAT-filsystemet er at når en fil blir slettet eller en ny fil blir fjernet, kan den tomme plassen på stasjonen skrives til av noe annet. FAT tar ikke vare på plasseringen av nye filer når dette skjer, og det fører til at filfragmenter blir skrevet over hele disken. Filtildelingstabellene gjør at dataene kan bli funnet, men lese / skrivehodet på harddisken må samle dataene fra forskjellige deler av disken. Dette er grunnen til at du ser en ytelsesnedgang. FAT-filsystemet er spesielt utsatt for fragmentering av veldig design. Mer informasjon om FAT finner du på Wikipedia.

NTFS er forkortelse for New Technology File System. Det ble igjen utviklet av Microsoft for sin Windows NT-serie av operativsystemer. Det betyr at NTFS brukes i alle versjoner av Windows basert på NT-kjernen, inkludert Windows 2000, XP, Server 2003, Server 2008 og det ærverdige Windows Vista. Den største forskjellen med NTFS er at den er basert på metadata. Metadata er "data om data", ifølge Wikipedia. Med andre ord er metadataene som en liten minidatabase på stasjonen som lagrer all slags informasjon om filene og katalogene på harddisken. NTFS støtter ting som komprimering, filnivå-sikkerhet og andre ting som er nyttige for bedriften, og attributtene lagres i metadataene. Det kule med denne måten å håndtere filer på er at den kan utvides for å støtte andre funksjoner. Faktisk har Microsoft gitt ut fem forskjellige versjoner av NTFS, hver påfølgende oppdatering gir flere funksjoner. For informasjon om NTFS finner du på Wikipedia.

Når det gjelder fragmentering, er NTFS mye mer forbedret enn FAT og er mer effektiv i hvordan den håndterer dataplassering på harddisken. Men NTFS er utsatt for fragmentering. Det var en myte for en stund at NTFS ikke var utsatt for fragmentering, men igjen, det var en myte. NTFS-filsystemet er veldig fleksibelt. Ettersom det kreves nye attributter eller kapasitet fra NTFS, lager det rom og lagrer den informasjonen i masterfiltabellen. Hvis det ble avsatt en viss plass til en liten fil, og da blir filen veldig stor, vil deler av filen måtte lagres i andre områder av stasjonen, da NTFS oppretter nye datalagringsområder. NTFS-filsystemet brukte også klynger, akkurat som FAT. Så, ja, NTFS kan ha en redusert kapasitet for fragmentering, men det er fremdeles mottagelig.

Ext3 er filsystemet som brukes av Linux . Det som gjør ext3 mest bemerkelsesverdig i motsetning til noe Windows-filsystem er at det er et journalført filsystem. Et journalført filsystem er et der alle endringer i filene er logget på en journal før de blir skrevet til stasjonen. Journalen er lagret i et angitt område av stasjonen. I sin natur er det mye mindre sannsynlig at et journalført filsystem blir ødelagt. Journalen er en løpende oversikt over ALLE handlinger som skal utføres på en fil. I tilfelle avbrudd (for eksempel strømbrudd), kan hendelsene i journalen ganske enkelt "spilles av" for å gjenskape konsistensen mellom journalen og filene på stasjonen.

Naturen til ext3 gjør fragmentering alt annet enn ikke-eksisterende. Faktisk sier Wikipedia at Linux System Administrator Guide sier: “Moderne Linux-filsystem (er) holder fragmentering på et minimum ved å holde alle blokker i en fil nær hverandre, selv om de ikke kan lagres i påfølgende sektorer. Noen filsystemer, som ext3, tildeler effektivt den frie blokken som er nærmest andre blokker i en fil. Derfor er det ikke nødvendig å bekymre deg for fragmentering i et Linux-system. ”

Når du ser på OS Xs filsystem, som også er journalført, begynner du å se hvorfor Linux også er utsatt for fragmentering …

Hierarchical File System (HFS) er filsystemet som brukes av Mac OS X. Den ble utviklet av Apple selv. Vi har det originale HFS-filsystemet (ofte kalt Mac OS Standard) og den nyere revisjonen HFS Plus (referert til som Max OS Extended). HFS har vært gjennom mange revisjoner. HFS brukes knapt lenger. HFS Plus ble introdusert med Mac OS 8.1. Mest bemerkelsesverdig for diskusjonen vår er at Apple introduserte journalføring til filsystemet sitt med Mac OS 10.3, sammen med flere andre funksjoner som er nøkkelen til måten OS X fungerer på.

Det ser ut til å være to tanker når det gjelder defragmentering i OS X. Noen sier at det ikke er nødvendig fordi det bruker et journalført filsystem. Andre sier at det er unødvendig, bare ikke på samme måte som Windows. OS X har den innebygde evnen til å ta vare på filfragmentering, og den vil gjøre dette på egen hånd. Det som imidlertid kan oppstå er stasjonsfragmentering - små biter av ledig plass mellom filene. Prestasjonsmessig er det nesten ikke et problem, og du vil sjelden oppnå noen ytelsesgevinst ved å gjøre en tradisjonell defrag av en OS X-maskin. Stasjonsfragmentering blir egentlig bare et problem hvis du begynner å fylle stasjonen opp til nesten full kapasitet. Dette er fordi OS X vil være tom for plass til egne systemfiler.

Så kort sagt, det er ikke nødvendig å defragmentere i OS X med mindre du begynner å fylle opp harddisken. Når dette fortsetter, kan du begynne å oppleve tilfeldig OS X "rare" på grunn av at OS går tom for plass til dets temp-filer. Når dette skjer (eller helst før), vil en defragment av harddisken din bli kvitt eventuell slakk plass mellom filene på stasjonen og gjenopprette plass for bruk av OS X.

Jeg tror dette også vil være tilfelle med Linux.

Annet referanseinnhold:

  • Trenger Mac OS X en diskdrager / optimizer?
  • Rutinemessig vedlikehold av Macintosh OS X
  • Hvorfor trenger Linux defragmentering?

Så kort sagt

Hvis du kjører Windows, er du utsatt for fragmentering. FAT32-systemer er VELDIG utsatt for det. NTFS er mindre utsatt, men likevel nok. Linux- og Mac-brukere er utsatt for fragmentering, men i motsetning til Windows, forårsaker det ikke ytelse på maskinen. Mac-brukere trenger egentlig bare å bekymre seg for fragmentering ettersom deres stasjoner nær kapasitet. Problemet med Linux og Mac er ikke filfragmentering (som med Windows), men driver fragmentering.

Håper det hjelper. Og som alltid ønsker jeg alle mennesker med kunnskap om dette området velkommen til å kommentere. Jeg gjorde den beste undersøkelsen jeg kunne om dette, men det er absolutt mulig at jeg har noe galt. Og når du kaster Linux og Mac “defrag debatter” i blandingen, er det sikkert at det er meninger fra begge sider.

Filsystemer - som trenger defragmentering?