NWCACHE - это программа кэширования диска. Кэширование данных позволяет сократить повторное обращение к диску и значительно повысить производительность. Если запрашиваются данные с диска, то, если они уже находятся в кэш-буфере, то передаются прямо в вашу программу. Из памяти в память они перемещаются гораздо быстрее. При заполнении кэш-буфера давно неиспользуемые данные освобождают место для новых.
Команда запуска программы NWCACHE обычно включается в файл AUTOEXEC.BAT. NWCACHE организует кэширование диска. Параметры NWCACHE позволяют задать размер кэш-буфера, кэшируемые диски, куда загружается программа кэширования, размер и расположение буфера предввода и начальные параметры буфера.
NWCACHE [/? /H] [диск[:] диск[:]+ диск[:]-]
[макс_размер мин_размер] [/A20] [[/BE /BL /BU]
[=размер]] [/CHECK] [/DELAY=ON OFF время] [/E]
[/L] [/LEND=ON OFF] [/MU[X] [/ML[X]] [/W=размер]
[/X[=адрес]]
NWCACHE [/? /H] [- +] [диск[:] диск[:]- диск[:]+]
[/DELAY=ON OFF время] [/Q /U] [/S] [/SIZE=MIN MAX]
При использовании команды NWCACHE для выделения кэш-буфера в памяти можно использовать следующие параметры:
| Параметр | Описание |
|---|---|
| /? или /H | Выводят справочный текст. |
| диск[:]+ | Кэшируется указанный диск. По умолчанию разрешена задержка записи. |
| диск[:]- | Исключает из процесса кэширования указанный диск. |
| диск[:] | Определяет указанный диск как диск с немедленной записью. |
| макс_размер | Задает максимальный размер кэш-буфера. По умолчанию NWCACHE использует всю расширенную или дополнительную память до 7670К. |
| мин_размер | Задает минимальный размер кэш-буфера. Значение по умолчанию основывается на размере доступной памяти. |
| /A20 | При использовании кэш-буфера в расширенной памяти подавляет улучшенный режим A20. Этот параметр ухудшает производительность и должен использоваться только для разрешения проблем совместимости. Он может указываться только в том случае, если не загружен администратор XMS. |
| /BE[=размер] | Загружает в EMS-память буфер предвыборки и может задавать его размер (от 4 до 16К). Этот параметр следует использовать осторожно, так как некоторые дополнительные платы памяти работают достаточно медленно и могут ухудшать производительность. |
| /BL[=размер] | Загружает буфер предвыборки в обычную память и задает его размер. |
| /BU[=размер] | Загружает буфер предвыборки в верхнюю память и может задавать его размер (от 4 до 16К). |
| /CHECK | При запуске кэша разрешает выполнение диагностического теста. |
| /DELAY=OFF | Запрещает задержку записи и задает для всех дисков режим немедленной записи. |
| /DELAY=ON | Разрешает задержку записи (по умолчанию она равна 5000 мсек). |
| /DELAY = время | Задает время задержки записи в мсек (от 50 до 5000). Когда задержка записи равна 50 или более, запросы записи перед записью на диск могут накапливаться в кэше. |
| /E | Для кэш-буфера используется память EMS. |
| /L | Использует для кэш-буфера обычную память. |
| /LEND=ON /LEND=OFF | Разрешает (ON) или запрещает (OFF) использование кэш-буфера совместно с другими программами, требующими дополнительной или EMS-памяти. При разрешении NWCACHE отслеживает запросы на разрешение памяти XMS и EMS и автоматически уменьшает размер кэша в соответствии с запросом. При освобождении запрошенной памяти она возвращается в кэш. |
| /ML[X] | Загружает NWCACHE в обычную память. /ML переопределяет использование по умолчанию DPMS для загрузки NWCACHE в расширенную память. Для загрузки NWCACHE в память через DPMS используйте параметр /MLX. |
| /MU[X] | Если она доступна, загружает NWCACHE в верхнюю память (память между 640К и 1Mб). /MU переопределяет использование по умолчанию DPMS для загрузки NWCACHE в дополнительную память. Для загрузки NWCACHE в дополнительную память через DPMS используйте параметр /MUX. Если для назначения фиксированных адресов верхней памяти вы используете Maximize (386MAX), Optimize (QEMM) или другой аналогичный продукт, то данный параметр указывать не следует. |
| /W=размер | Устанавливает ограничение на объем данных с отложенной записью (от 0 до 7670К). Это ограничивает объем данных с отложенной записью, которые могут накапливаться в кэше. Если размер установлен в значение 0, то запросы записи для всех дисков удовлетворяются немедленно. Если этот параметр не указывается, для записи данных может использоваться вся область кэша. |
| /X[=адрес] | Использует для кэширования расширенную память. Если не загружен администратор памяти, но эта память установлена, задайте адрес кэш-буфера (выше мегабайта). Если установлена память XMS, то адрес задать нельзя. |
Если кэш-буфер уже выделен, то можно указывать следующие параметры. Эти параметры называются управляющими параметрами.
| Параметр | Описание |
|---|---|
| /? или /H | Выводят справочный текст. |
| - | Выводит содержимое кэш-буфера и запрещает его использование. Этот параметр выполняет все незавершенные операции записи, выгружает все данные из памяти и запрещает кэш. Последующие операции записи и чтения с диска выполняются без кэширования, хотя NWCACHE остается в памяти. Вновь разрешить кэширование можно с помощью параметра +. |
| + | Очищает кэш-буфер и разрешает его использование. Статистика кэша обнуляется. Все данные из кэша выводятся. Если ранее кэширование было запрещено, оно разрешается. |
| диск[:]+ | Разрешает кэширование заданного диска. Задержка записи разрешается. Диск задается буквой диска. |
| диск[:]- | Исключает из кэширования заданный диск. |
| диск[:] | Идентифицирует заданный диск как диск с немедленной записью. |
| /DELAY=ON | Разрешает задержку записи. По умолчанию она равна 5000. |
| /DELAY=время | Задает задержку записи в мсек от 50 до 5000, что позволяет накапливать запросы перед записью на диск. |
| /DELAY=OFF | Задает для всех дисков режим немедленной записи. Этот параметр завершает все отложенные операции записи и устанавливает для всех дисков режим немедленной записи. |
| /Q или /U | Завершает кэширование. Этот параметр завершает все отложенные операции записи, освобождает все буферы и память, выделенную для управляющей таблицы, а также выгружает из памяти программу кэширования. Если другая программа перехватывает векторы прерывания, то выгрузить NWCACHE иногда не удается. В этом случае нужно сначала удалить эту программу. |
| /S | Выводит информацию о состоянии кэширова- ния, завершая перед этим все отложенные операции записи. |
| /SIZE=MIN /SIZE=MAX | Минимизирует или максимизирует размер кэш-буфера, завершая все отложенные операции записи, выгружая все данные из кэш-памяти и уменьшая размер кэш-памяти до минимального размера или увеличивая его до максимального. |
NWCACHE кэширует данные всех типов компрессированных дисков (Stacker, SuperStor, DoubleDisk), автоматически использует память совместно с другими приложениями, с помощью DPMS (DOS Protected Mode Services) путем загрузки в расширенную память уменьшает потребности в памяти (размер резидентной части в обычной памяти при этом сводится к минимуму).
Резидентная часть NWCACHE занимает 5К памяти (10К, если не используется DPMS), буфер предвыборки - от 4 до 16К, управляющие таблицы - 0К (1К + 3К на каждый мегабайт кэша, если не используется DPMS).
Если конфигурация вашей системы требует двойной буферизации, то еще 2К обычной памяти требуются для драйвера DBLBUF.SYS.
При наличии процессора 80286 и расширенной памяти перед использованием NWCACHE требуется загрузка HIMEM. Если в системе установлен процессор 386 или старше, то инсталлируйте администратор памяти EMM386.