Diskkomprimering

Ett verktyg för diskkomprimering ökar mängden information som kan lagras på en hårddisk av given storlek. Till skillnad från ett filkomprimeringsverktyg , som endast komprimerar specificerade filer – och som kräver att användaren anger att filerna ska komprimeras – fungerar ett on-the-fly-diskkomprimeringsverktyg automatiskt genom inbyggd programvara utan att användaren behöver vara medveten om dess existens. On-the-fly diskkomprimering är därför också känd som transparent , realtids- eller onlinediskkomprimering .

När information behöver lagras på hårddisken komprimerar verktyget informationen. När information behöver läsas, dekomprimerar verktyget informationen. Ett verktyg för diskkomprimering åsidosätter standardrutinerna för operativsystemet . Eftersom alla program har tillgång till hårddisken med dessa rutiner, fortsätter de att fungera efter att diskkomprimering har installerats.

Diskkomprimeringsverktyg var populära särskilt i början av 1990-talet, när mikrodatorhårddiskarna fortfarande var relativt små (20 till 80 megabyte ). Hårddiskar var också ganska dyra på den tiden och kostade ungefär 10 USD per megabyte. För de användare som köpte diskkomprimeringsapplikationer visade sig mjukvaran på kort sikt vara ett mer ekonomiskt sätt att skaffa mer diskutrymme i motsats till att ersätta sin nuvarande enhet med en större. Ett bra verktyg för diskkomprimering kan i genomsnitt fördubbla det tillgängliga utrymmet med försumbar hastighetsförlust. Diskkomprimering förföll i slutet av 1990-talet, eftersom framsteg inom hårddiskteknik och tillverkning ledde till ökad kapacitet och lägre priser.

Vanliga diskkomprimeringslösningar

Fristående hårdvara

Några av de initiala diskkomprimeringslösningarna var hårdvaruassisterad och använde tilläggskompressor/dekomprimerings- samprocessorkort förutom en mjukvarudrivrutin. Kända lösningar inkluderar:

  • Stacker XT/8 och Stacker AT/16 från Stac Electronics
  • Expanz! och Expanz! Plus från InfoChip Systems
  • DiskDoubler dd2000 från Datran Corporation
  • MRCI (Microsoft Real-Time Compression Interface) från Microsoft

Fristående programvara

Med ökande PC-processorkraft började mjukvarulösningar nå eller till och med överträffa prestandan hos hårdvarustödda lösningar i de flesta scenarier. Dessa kompressionsverktyg såldes oberoende. En användare var tvungen att specifikt välja att installera och konfigurera programvaran.

Medföljande programvara

Idén att paketera diskkomprimering till nya maskiner tilltalade återförsäljare och användare. Återförsäljare gillade att de kunde göra anspråk på mer lagringsutrymme; användare gillade att de inte behövde konfigurera programvaran. Medföljande verktyg ingår (i kronologisk ordning):

Andra lösningar

Medan Windows XP , från Microsoft, inkluderade både ett inbyggt stöd och ett kommando som heter compact som komprimerar filer på NTFS- system, är det inte implementerat som en separat "komprimerad enhet" som de ovan.

Drift

Diskkomprimering skapar vanligtvis en enda stor fil, som blir en virtuell hårddisk. Detta liknar hur en enda fysisk hårddisk kan partitioneras i flera virtuella enheter. Den komprimerade enheten nås via en enhetsdrivrutin .

Komprimera befintliga enheter

Alla enheter skulle initialt vara tomma. Verktyget för att skapa en enhet skulle vanligtvis erbjuda att "komprimera en aktuell enhet". Detta innebar att verktyget skulle:

  • Skapa en tom komprimerad enhet, lagrad på den befintliga enheten.
  • Överför befintliga filer på den gamla enheten till den nya komprimerade enheten.
  • Öka storleken på den nya komprimerade enheten efter behov för att få plats med fler filer och tillåta tomt utrymme när du är klar.
  • När alla filer överfördes byttes enhetsbokstäverna.

Vanligtvis skulle vissa systemfiler inte överföras. Till exempel skulle OS swap-filer bara finnas kvar på värdenheten.

Komprimerar startenheten

En enhetsdrivrutin måste laddas för att komma åt den komprimerade enheten. En komprimerad enhet C: krävde ändringar av startprocessen enligt följande:

  • System -BIOS laddar sektor 0 på den första fysiska hårddisken ( Master Boot Record) .
  • Partitionssektorn laddar sektor 0 för den startbara partitionen ( Volume Boot Record ) . I det här fallet är det värdenheten.
  • Värdenhetssektor 0 laddar (i fallet med DOS ) DOS BIOS ( IO.SYS , IBMBIO.COM etc.) Beroende på version kan endast de första få sektorerna av filen eller hela filen laddas in i minnet. I det första fallet innehåller den laddade stubben en annan laddare som laddar resten av filen från disken. I fallet med DR-DOS är BIOS packat och kommer att dekomprimera sig själv genom en inbäddad dekompressionsrutin.
  • DOS BIOS laddar sedan DOS-kärnan ( MSDOS.SYS , IBMDOS.COM etc.)
  • Om DOS stöder preload API, försöker DOS BIOS att ladda en förladdningsbar komprimeringsdrivrutin ( DBLSPACE.BIN , DRVSPACE.BIN eller STACKER.BIN ) från roten på värdenheten och försöker kommunicera med den via DOS preload API. Om drivrutinen svarar som förväntat kommer DOS BIOS att behålla drivrutinen, om inte kommer den att kasseras. Om den behålls och konfigureras i enlighet därmed, kan enhetsbokstäver bytas ut, så att den komprimerade enheten blir C:.
  • DOS BIOS startar CONFIG.SYS- bearbetning genom att leta efter filen i roten på startenheten. I fallet med DR-DOS DCONFIG.SYS företräde framför CONFIG.SYS, om det finns.
  • Komprimeringsdrivrutiner som inte laddas via preload API kan laddas via DEVICE- satser.
  • Beroende på konfiguration och om detta inte redan har hänt, kan enhetsbokstäver bytas ut så att den komprimerade enheten blir C:.
  • Bearbetningen fortsätter från den komprimerade enheten.

Prestandapåverkan

På system med långsammare hårddiskar kan diskkomprimering faktiskt öka systemets prestanda. Detta åstadkoms på två sätt:

  • När den väl komprimerats fanns det mindre data att lagra.
  • Diskåtkomster skulle ofta kombineras för effektivitet.

Om systemet var tvungen att vänta ofta på att åtkomst till hårddisken skulle slutföras ( I/O-bunden ) skulle konvertering av hårddisken till komprimerade enheter kunna påskynda systemet avsevärt. Komprimering och dekomprimering av data ökar CPU-användningen. Om systemet redan var CPU-bundet , minskar diskkomprimeringen den totala prestandan.

Nackdelar

Några vanliga nackdelar med att använda diskkomprimering:

  • Inte alla komprimeringsverktyg skulle bekräfta frånvaron av fel i FAT-filsystemet innan en disk komprimeras på plats. Vissa fel, som tvärlänkade filer , kan resultera i ytterligare dataförlust under överföringsprocessen.
  • Den komprimerade enheten är endast synlig om enhetsdrivrutinen är laddad och den komprimerade enheten är monterad. En startskiva , till exempel, kanske inte innehåller drivrutinen. (Detta var normalt inte ett problem för lösningar som följde med operativsystemen såvida man inte startar upp främmande operativsystem, eftersom systemverktyg som SYS modifierades för att kopiera komprimeringsdrivrutinerna till startdiskar som standard, och motsvarande operativsystem skulle också falla tillbaka till leta efter dem på andra enheter än startskivan om de inte kunde hittas där.)
  • Avinstallationen var problematisk om den utökade storleken på data på den komprimerade disken var större än den normala diskkapaciteten.
  • Användare insåg inte alltid att den stora filen på värdenheten innehöll den komprimerade enheten. Även om den vanligtvis var "dold" som standard, kunde användare som tyckte att den stora filen var nyfiken eller misstänksam radera den. Detta skulle normalt resultera i dataförlust.

Se även

Anteckningar

  1. ^ I tvärlänkade filer lagrar två filer åtminstone en del av sina data på samma plats. Åtminstone en del av en fil (den "dåliga" filen) går alltid förlorad i det här fallet. Men om den "dåliga" filen kopieras och sedan raderas, raderas en del av den "bra" filen också. Microsoft SCANDISK skapades delvis för att utföra en bättre kontroll av filsystemet före komprimering än MS-DOS CHKDSK -verktyget.
  2. ^ Till exempel, DOS associerade upp till fyra attribut med filer: System, Hidden, Read-Only och Archive. Filer med attributen System eller Hidden visas ofta inte som standard. Filer med attributet System eller Read-Only kan inte raderas med ERASE eller DEL DOS. De flesta komprimeringsverktyg skulle markera enhetsfilen med minst ett eller flera av attributen System, Hidden och Read-Only (många skulle använda alla tre). Filer märkta med sådana attribut kan dock visas och raderas på andra sätt. Dessutom kan användaren också ta bort attribut.

externa länkar