SmartDRV
SMARTDRV je příkazem MS-DOSu od verze 4.01 po 6.22 - celým jménem SmartDrive. Jedná se o cache pro disk vytvořenou v RAM, aby se urychlil zápis/čtení na/z disku. Existují dvě specifikace - device driver SMARTDRV.SYS (počáteční verze), který se spouštěl pomocí CONFIG.SYS a samostatný spustitelný soubor SMARTDRV.EXE, který mohl uživatel spustit dle své libovůle (v AUTOEXEC.BAT nebo kdykoliv po naběhnutí systému). Verzi 4.0 a vyšší lze umístit i do UMA a tím ušetřit drahocené místo v konvenční části paměti. Bez zajímavosti určitě není ani fakt, že Microsoft potvrdil použití SmartDrivu během instalace Windows 2000 a Windows XP, aby zkrátil čas potřebný pro nakopírování všech potřebných souborů na disk.
Co je dobré vědět:
1) Na Compact Flash / SD kartách používaných jako disk nemá SmartDrive žádný smysl.
2) Stejně tak nemá smysl na řadičích a discích s DMA přístupem.
3) Pokud chcete SMARTDRV.EXE umístit do horní paměti UMA, nesmí v CONFIG.SYS chybět řádek device=himem.sys.
4) Jestliže máte aktivovaný SmartDrive, NIKDY nevypínejte počítač a ani nepoužívejte tlačítko Reset, dokud se nezápíší všechna data, která jsou dočasně v cachi.
5) Pokud nespecifikujete, kolik RAM má SmartDrive použít pro cache, je schopen využít celou XMS nebo EMS.
Syntaxe:
SMARTDRV [/X] [drive] [+/-] [/U] [/C] /... [InitCacheSize] [WinCacheSize]
/X Zakáže cache pro zápis na všech discích.
drive Písmeno disku, pro který má být cache použita.
+ Povolí cache pro zápis na zvoleném disku.
- Zakáže cache pro zápis i čtení pro daný disk.
/U Cache nebude využívána pro čtení z CD-ROM disků.
/C Okamžitě dojde k zápisu všech dat v cache na disk.
/R Smaže cache a restartuje SmartDrive.
/F Dojde k zápisu všech dat před návratem do příkazového řádku.
/N Nedojde k zápisu všech dat před návratem do příkazového řádku.
/L Zakáže SmartDrivu, aby se nahrál do UMA.
/V Vypíše zprávu o stavu SmartDrivu při jeho spuštění.
/Q Nevypíše zprávu o stavu SmartDrivu při jeho spuštění.
/S Vypíše detailní zprávu o stavu SmartDrivu při jeho spuštění.
InitCacheSize
Množství XMS paměti v kilobytech, která bude využita pro cache.
WinCacheSize
Množství XMS paměti v kilobytech, která bude využita pro cache ve Windows (3.0 - ME). Bez tohoto parametru bude pro cache použita EMS.
/E:ElementSize Určuje kolik dat v KB má být v jeden okamžik přenášeno mezi cache a diskem.
/B:BufferSize Určuje kolik dat v KB má být načteno předem.
Příklad:
C:\DOS\SMARTDRV.EXE /X
Umístěno v AUTOEXEC.BAT. V tomto stavu zajistí načtení SmartDrivu do paměti, jeho spuštění a zakázání cache pro zápis na všech discích (nedojde ke ztrátě nezapsaných dat v případě náhlého vypnutí počítače nebo výpadku proudu).
C:\DOS\SMARTDRV.EXE C 1024 512
Pro disk C bude použito na cache 1MB z paměti RAM pro MS-DOS a 0,5MB (512KB) pro Windows.