MS-DOS для программиста

Драйвер SMARTDRV


Самый простой способ организации кэширования дисковой памяти - использование драйвера smartdrv.exe . Этот драйвер можно запускать как резидентную программу из файла autoexec.bat или из командного приглашения MS-DOS:

c:\dos\smartdrv [/X] [[Диск[=|-]]...] [/U] [/C | /R] [/F | /N] [/L] [/V | /Q | /S] [НачРазмер] [РазмерДляWindows] [/E:ElemSize] [/B:BufSize]

Необязательный параметр [НачРазмер] задает размер области оперативной памяти в Кбайтах, отводимой под кеш. Если он не задан, для кеша отводится блок памяти, размер которого зависит от общего объема расширенной памяти, установленной в компьютере.

Параметр [РазмерДляWindows] (также необязательный) задает минимальный размер кеша в Кбайтах. Этот параметр обычно используют при работе с оболочкой Microsoft Windows , которая умеет уменьшать размер кеша и использовать освободившуюся память для своих нужд. Например, может уменьшить размер кеша до нуля, что скажется отрицательно на производительности дисковой системы.

Задавая параметр [Диск], можно управлять кэшированием отдельных дисков. Если этот параметр указан без символов "+" или "-", для данного диска разрешается кэширование на чтение. Если же указан символ "+", разрешается кэширование на чтение и запись. Символ "-" полностью отключает кэширование.

Кэширование на запись предполагает "отложенное" выполнение записи на диск. То есть программа, выполняющая запись данных на диск, получает сигнал о завершении записи еще до того, как запись была фактически завершена. Запись произойдет позже, когда процессор будет свободен (если, конечно, случайно не пропадет напряжение питания, а вместе с ним и содержимое кеш-памяти). Таким образом, работа многих программ сильно ускоряется.

Приведем краткое описание других параметров.



Параметр Описание
X Отключение кеширования на запись для всех устройств, кроме указанных индивидуально в параметре [Диск+]
U Отключение кеширования устройства чтения компакт-диска
C Принудительная запись содержимого кеш-памяти на диск. Используется при запуске программы smartdrv.exe из командного приглашения MS-DOS
R Стирание содержимого кеш-памяти и перезапуск программы smartdrv.exe
F Сохранение всех изменений в кеш-памяти на диске должно происходить сразу после выполнения операции записи. Этот режим используется по умолчанию
N Сохранение всех изменений в кеш-памяти на диске должно происходить, когда процессор не занят выполнением других операций
L Отключение возможности загрузки программы smartdrv.exe в верхнюю область памяти
V Отображение состояния программы smartdrv.exe и сообщений об ошибках
Q Отключение режима отображения состояния программы smartdrv.exe
S Отображение дополнительной информации о состоянии программы smartdrv.exe
E Размер блока памяти, который записывается на диск или читается с диска при выполнении одной операции, по умолчанию равен 8 Кбайт
B Размер буфера предварительной выборки при чтении, должен быть кратен размеру блока памяти, указанному в параметре E

Если вы собираетесь использовать программу smartdrv.exe для кеширования устройства чтения компакт-дисков, загружайте ее ПОСЛЕ запуска программы mscdex.exe.



Содержание раздела