DriveSpace
DriveSpace | |
Kategória |
|
A DriveSpace (eredeti nevén DoubleSpace) egy lemeztömörítő segédprogram, amelyet az MS-DOS-zal együtt szállítottak az 1993-as 6.0-s verziótól kezdve a Windows Me 2000-es megjelenéséig. A DriveSpace célja, hogy a felhasználó által a lemezeken tárolható adatok mennyiségét növelje az adatok menet közbeni átlátható tömörítésével és kicsomagolásával. Elsősorban merevlemezekhez való használatra szánták, de a floppylemezekhez való használat is támogatott. Ezt a funkciót a Windows XP-ben és a későbbiekben eltávolították és helyette egy másfajta lemeztömörítést építettek be.
Áttekintés
[szerkesztés]A leggyakoribb felhasználási forgatókönyv szerint a felhasználónak egy merevlemeze van a számítógépében, és az összes helyet egy partícióhoz (általában a C: meghajtóhoz) rendeli. A szoftver a teljes partíció tartalmát egyetlen nagy fájlba tömöríti a gyökérkönyvtárban. A rendszer indításakor az illesztőprogram ezt a nagy fájlt a C: meghajtóhoz rendeli, lehetővé téve a fájlok normál módon történő elérését.
A Microsoft döntését, hogy az MS-DOS 6.0-ás verziójához hozzáadta a lemeztömörítést, befolyásolta az a tény, hogy a konkurens DR DOS már korábban, az 1991-es 6.0-s verzió óta tartalmazott lemeztömörítő szoftvert.
Ahelyett, hogy a semmiből fejlesztette volna ki saját termékét, a Microsoft licencelte a Vertisoft által kifejlesztett DoubleDisk termék technológiáját, és azt DoubleSpace néven adaptálta. Például a tömörítést/dekompressziót vezérlő meghajtó (DBLSPACE.BIN) betöltése mélyebben integrálódott az operációs rendszerbe (a nem dokumentált előzetes betöltési API-n[1] keresztül még a Config.sys fájl előtt betöltődött).
A Microsoft eredetileg a Stacker nevű hasonló termékkel rendelkező Stac Electronics-tól próbálta licencelni a technológiát, de ezek a tárgyalások kudarcba fulladtak. A Microsoftot később sikeresen beperelte a Stac Electronics szabadalomsértésért, mivel megsértette néhány tömörítési szabadalmát. A bírósági per során a Stac Electronics azt állította, hogy a Microsoft nem volt hajlandó pénzt fizetni, amikor megpróbálta licencelni a Stacker-t, és csak azt a lehetőséget ajánlotta fel a Stac Electronics számára, hogy továbbfejlesztő termékeket fejlesszen ki.
Fogyasztás és kompatibilitás
[szerkesztés]Néhány számítógépes program, különösen a játékok, nem voltak kompatibilisek a DoubleSpace-szel, mert gyakorlatilag megkerülték a DoubleSpace illesztőprogramját. A DoubleSpace emellett jelentős mennyiségű hagyományos memóriát fogyasztott, ami megnehezítette a memóriaigényes programok futtatását.
Hibák és adatvesztés
[szerkesztés]Röviddel a megjelenés után adatvesztésről érkeztek jelentések. A Blossom Software nevű cég azt állította, hogy találtak egy hibát, amely adatsérüléshez vezethetett. A hiba akkor lépett fel, amikor a fájlokat erősen töredezett lemezekre írták, és a BUST.EXE nevű program mutatta be. A cég egy DoubleCheck nevű programot árult, amellyel ellenőrizni lehetett a hibához vezető töredezettségi állapotot. A Microsoft álláspontja az volt, hogy a hiba csak valószínűtlen körülmények között lépett fel, de az MS-DOS 6.2-ben javította a problémát.[2]
A töredezettségi feltétel azzal függött össze, ahogyan a DoubleSpace tömöríti az egyes (mondjuk 8 K méretű) klasztereket, és elhelyezi őket a lemezen, kevesebb szektort (512 bájt méretű) foglalva el, mint amennyire a DoubleSpace nélkül fixen szükség lenne (ebben a példában 16 szektor). Ez egyfajta belső töredezettségi probléma lehetőségét teremtette meg, amikor a DoubleSpace nem talál elég egymást követő szektort egy tömörített klaszter tárolásához, még akkor sem, ha rengeteg hely áll rendelkezésre.
Az adatvesztés egyéb lehetséges okai közé tartozott a DoubleSpace memóriaterületeinek más programok általi megrongálása, a DoubleSpace memóriaterületei nem voltak védettek, mivel az MS-DOS valós üzemmódban futott. A Microsoft a DoubleSpace MS-DOS 6.2-es verziójában megpróbálta ezt orvosolni (a DoubleGuard nevű funkcióval, amely ellenőrizte az ilyen sérüléseket).
Az a tény, hogy egy tömörített meghajtó tömörített tartalmát egyetlen fájlban tárolták, magában hordozta annak lehetőségét, hogy a felhasználó véletlenül az összes adatát törölje, ha csak ezt a fájlt törli. Ez akkor történhetett meg, ha a felhasználó véletlenül hozzáférhetett az ezt a fájlt tartalmazó gazdameghajtóhoz. A hoszt meghajtót a tömörítő illesztőprogram általában a H: betűhöz rendelte hozzá. Ha azonban a tömörítő illesztőprogram nem töltődött be, a felhasználó a C: meghajtót láthatta.
A számítógép kikapcsolása, mielőtt a DoubleSpace befejezhette volna az adatstruktúrák frissítését, szintén adatvesztéshez vezethetett. Ezt a problémát súlyosbította, hogy a Microsoft az MS-DOS 6.0-hoz mellékelt SMARTDRV lemez gyorsítótár szoftverben alapértelmezés szerint engedélyezte az írási gyorsítótárazást. E változás miatt előfordulhatott, hogy egy alkalmazásból való kilépés után az MS-DOS prompt megjelenhetett, mielőtt az összes adatot kiírták volna a lemezre. Mivel azonban nem volt szabályozott kikapcsolási eljárás (mint a modern operációs rendszerekben), sok felhasználó az MS-DOS prompt megjelenését annak jeleként tekintette, hogy a számítógépet nyugodtan ki lehet kapcsolni, ami az MS-DOS 6.0 előtt jellemzően így volt. A Microsoft ezt a problémát az MS-DOS 6.2-ben kezelte, ahol az írási gyorsítótár alapértelmezés szerint továbbra is engedélyezve volt, de a gyorsítótárat ki kellett üríteni, mielőtt a parancssor újra megjelenhetett volna.
Windows 95
[szerkesztés]A Windows 95 teljes mértékben támogatta a DoubleSpace/DriveSpace-t a tömörített meghajtók eléréséhez szükséges natív 32 bites illesztőprogramon keresztül, valamint a szoftvereszközök grafikus változatán keresztül. Az MS-DOS DriveSpace-felhasználók gond nélkül frissíthettek a Windows 95-re. Továbbá a ffMicrosoft Plus! for Windows 95]] csomag tartalmazta a DriveSpace 3. verzióját. Ez a verzió új tömörítési formátumokat (HiPack és UltraPack) vezetett be különböző teljesítményjellemzőkkel a még nagyobb tömörítési arányok érdekében, valamint egy olyan eszközt, amely a lemezen lévő fájlokat a különböző formátumok használatával újratömörítette, attól függően, hogy a fájlokat milyen gyakran használták. A DriveSpace 2-ről a DriveSpace 3-ra lehetett frissíteni, de nem volt visszafejlesztési lehetőség a DriveSpace 2-re. A DriveSpace 3 meghajtót azonban vissza lehetett tömöríteni. A DriveSpace 3 DOS-eszközillesztőjének memóriaigénye az új funkciók miatt körülbelül 150 KB volt. Ez nehézséget okozott a Windows 95 MS-DOS üzemmódjába újrainduló felhasználóknak a játékok futtatásához, mivel a hagyományos memória mennyisége csökkent.
A DriveSpace 3 szintén a Windows 95 OSR2-vel együtt került forgalomba, de számos funkciót nem lehetett használni, hacsak nem volt telepítve a Plus! A DriveSpace a FAT32-vel sem volt használható, így a nagy merevlemezzel rendelkező PC-ken kevéssé volt használható. [3]
Jegyzetek
[szerkesztés]- ↑ Undocumented DOS: A programmer's guide to reserved MS-DOS functions and data structures - expanded to include MS-DOS 6, Novell DOS and Windows 3.1, 2, Reading, Massachusetts: Addison Wesley (1994. február 22.). ISBN 0-201-63287-X -- Andrew Schulman: Errata, Commentary, and Release Notes for UNDOCUMENTED DOS, 1991. március 18. (Hozzáférés: 2019. augusztus 4.) -- Ralf Brown: Undocumented DOS, 2nd Edition Errata, 1994. január 8. (Hozzáférés: 2019. augusztus 4.)
- ↑ (1993. szeptember 20.) „It's a good idea to 'DoubleCheck' your disk for fragmentation”. InfoWorld, 20. o.
- ↑ www.helpwithwindows.com: Windows 98, FAT32. HelpWithWindows.com , 1998. július 14. (Hozzáférés: 2024. március 30.)
Irodalom
[szerkesztés]- Special Edition Using MS-DOS 6.22, Third Edition. Que Publishing (2001. február 22.). ISBN 978-0789725738
- Windows 98 in a Nutshell: A Desktop Quick Reference. O'Reilly (1999). ISBN 978-1565924864
További információk
[szerkesztés]- Microsoft DoubleSpace System Application Programming Interfaces (API) v1.00.05 and DoubleSpace Compressed Volume File (CVF) format (ARJ). Microsoft, 1993 [2016. március 3-i dátummal az eredetiből archiválva].
- DoubleSpace Overview
- Mapping DOS FAT to MDFAT
- DoubleSpace Compressed Volume File Layout
- Microsoft Real-time Compression Interface (MRCI)