Глава 4 Кэширование жестких и компакт-дисков |
Средства 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 |