Средства 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.О
Copyright 1991,1994 Microsoft Corp.
Размер кэш-памяти: 2 097 152 байт
Размер кэш-памяти при работе Windows: 2 097 152 байт
Состояние кэширования диска
диск кэш чтения кэш записи буферизация
А: да нет нет
В: да нет нет
С: да да нет
F: да нет нет
для получения информации введите Smartdrv /?
В приведенном примере отчета видно, что для двух гибких дисков (А:, В:), жесткого диска (С:) и CD-ROM (F:) используется кэш для чтения, а кэш для записи — только для жесткого диска (С:). В столбце буферизация не указан ни один накопитель, т. к. это так называемая двойная буферизация, которая нужна очень редко. Более подробную настройку кэширования накопителей с помощью драйвера SmartDrive можно осуществить, используя дополнительные ключи.
Средства Windows 95/98
Несмотря на все усилия фирмы Microsoft, операционные системы Windows 95 и Windows 98 остаются самыми распространенными операционными системами. Особенно это касается наиболее совершенной версии Windows 98 — Windows 98 SE (Windows 98 Second Edition).
Как показывают экспертные оценки, проведенные авторитетными фирмами, доля данных систем до сих пор составляет большую половину: Windows 98, включая Windows 98 SE — примерно 50—55%, Windows 95 — около 5%. Такая популярность объясняется высокой стабильностью их работы, достигнутой благодаря длительному и тщательному тестированию этих систем и выпуском значительного числа исправлений.
В среде операционных систем Windows 95 и Windows 98 кэширование накопителей устанавливается следующим образом.
Для кэширования жестких дисков (рис. 4.1):
1. Выберите значок Мой компьютер.
2. В появившемся окне выберите значок Панель управления, а в следующем окне — значок Система.
3. В окне Свойства: Система перейдите на вкладку Быстродействие.
4. Нажмите кнопку Файловая система.
5. Перейдите на вкладку Жесткие диски.
6. В поле Оптимизация упреждающего чтения установите ползунок до конца вправо.
7. Зафиксируйте выбор нажатием на кнопку ОК.
Рис. 4.1. Кэширование жестких дисков в Windows 95
Для кэширования компакт-дисков (рис. 4.2):
1. Выберите значок Мой компьютер.
2. В появившемся окне выберите значок Панель управления, а в следующем окне — значок Система.
3. В окне Свойства: Система перейдите на вкладку Быстродействие.
4. Нажмите кнопку Файловая система.
5. Перейдите на вкладку Компакт-диски.
6. Выберите необходимый параметр в поле Оптимизация доступа, как правило, — для четырех и более скоростных устройств.
7. Установите необходимый размер кэш-памяти в поле Дополнительная кэшпамять, обычно ползунок перемещается до конца вправо.
8. Зафиксируйте выбор нажатием на кнопку ОК.
В режиме эмуляции MS-DOS для кэширования накопителей используются те же средства, что и в случае использования MS-DOS или Windows 3.1x
Рис. 4.2. Кэширование компакт-дисков в Windows 95
Средства Windows NT/2000/XP
Оценивая распространенность операционных систем, необходимо отметить, что, несмотря на популярность Windows 95/98, неуклонно растет доля и более совершенных систем, например, таких как Windows 2000. Ее доля составляет примерно 20—25%.
В операционной системе Windows 2000/XP большинство настроек кэшпамяти производится с помощью параметров реестра. Это осуществляется вызовом специальной программы regedit, встроенной в состав операционной системы. Вызов этой программы представлен на рис. 4.3, окно программы regedit — на рис. 4.4.
Однако существуют программы, которые предоставляют пользователю диалоговый режим, меняя реестр самостоятельно без участия пользователя.
Рис. 4.3. Вызов программы редактирования реестра — regedit
Рис. 4.4. Окно программы regedit