Иллюстрированный самоучитель по настройке и оптимизации компьютера

Средства MS-DOS, Windows 3.1 х

Повысить производительность устройств внешней памяти – жестких и компакт-дисков (CD-ROM) можно с помощью кэширования. В результате использования данного режима эксплуатации накопителей выделяется часть оперативной памяти для буферизации данных. Буферизация используется при операциях записи и чтения для жестких дисков и чтения для CD-ROM.

Кэширование позволяет оптимизировать обмен данными и, в конечном счете, повысить общую производительность компьютера. При кэшировании обмен данными между устройством с его контроллером и остальными частями компьютера производится не короткими фрагментами, а блоками значительной длины. Это увеличивает скорость передачи данных.

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

В соответствии с достаточно сложными алгоритмами кэширования поиск необходимых данных производится сначала в кэш-памяти – отведенной для кэширования части оперативной памяти, а уже потом на дисках выбранного устройства. Это позволяет уменьшить число циклов обращения к дискам накопителя. Доступ к оперативной памяти осуществляется значительно быстрее, чем к данным на указанных устройствах. Это связано с тем, что электроника работает значительно быстрее механических элементов. Для механических узлов время исполнения команд оценивается миллисекундами (жесткие диски) и даже десятками миллисекунд (CD-ROM), а поиск в оперативной памяти осуществляется за десятки наносекунд, т. е. в сотни тысяч раз быстрее.

Таким образом, хранение данных в области оперативной памяти, отведенной для целей кэширования, будет способствовать значительному увеличению скорости обмена данными и, в конечном счете, повышению общей производительности компьютера. С помощью кэширования можно значительно повысить быстродействие накопителей, особенно это касается дисковода CD-ROM.

При использовании операционной системы MS-DOS и оболочки Windows 3.1* кэширование CD-ROM можно реализовать с помощью драйвера MSCDEX, поставив ключ /м:х в строку загрузки драйвера. В данном случае х – это количество буферов. Для данного драйвера буфер – это 2 Кбайт ОЗУ. Скорость обмена и производительность компьютера будут возрастать с ростом выделенной памяти – количества буферов. Однако этот рост не может быть произвольным, т. к. он ограничен физическим размером оперативной памяти. Это может быть либо базовая память, либо верхние адреса ОЗУ – UMB. Обычно используется 10 буферов, тогда строка загрузки драйвера MSCDEX может выглядеть следующим образом:

c:\dos\mscdex /d:001 /m:10

Довольно часто используется драйвер SmartDrive, реализующий кэширование, как для CD-ROM, так и для жестких и гибких дисков. Данный драйвер, находясь в базовой и/или частично в UMB-памяти, предоставляет возможность использовать для кэширования дополнительную память значительного размера – Extended-память. Применение драйвера SmartDrive позволяет значительно увеличить размер буферной кэш-памяти, не занимая под буфер базовую или UMB-память. При этом можно реализовать кэширование нескольких устройств. Данный драйвер целесообразно использовать при наличии ОЗУ значительного размера – 8 Мбайт и более, что, начиная с процессоров класса 486, являлось, как правило, легко выполнимым условием.

Для активизации драйвера SmartDrive необходимо запустить файл smartdrv.exe. Для удобства его использования следует поставить ключ /v. В этом случае на экран будет выводиться информация о кэшируемых накопителях. Например, загрузив этот драйвер, пользователь получает следующий отчет:

Утилита кэширования дисков Microsoft SMARTDrive версии 5.0
Copyright 1991.1994 Microsoft Corp.
Размер кэш-памяти: 2 097 152 байт
Размер кэш-памяти при работе Windows: 2 097 152 байт
Состояние кэширования диска
диск кэш чтения кэш записи буферизация
А: да нет нет
В: да нет нет
С: да да нет
F: да нет нет
для получения информации введите Smartdrv /?

В приведенном примере отчета видно, что для двух гибких дисков (А:, В:), жесткого диска (С:) и CD-ROM (F:) используется кэш для чтения, а кэш для записи – только для жесткого диска (С:). В столбце буферизация не указан ни один накопитель, т. к. это так называемая двойная буферизация, которая нужна очень редко. Более подробную настройку кэширования накопителей с помощью драйвера SmartDrive можно осуществить, используя дополнительные ключи.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.