Фигурнов В. Э. Ф49 ibm pc для пользователя. Изд. 7-е, перераб и доп
Вид материала | Книга |
- Курс лекций и практикум. 6-е изд., перераб и доп, 44.04kb.
- В. А. Алексунина 3-е изд., перераб и доп. М.: Дашков и К°, 2005. 716с, 8.09kb.
- Карпенков С. Х. Концепции современного естествознания: Учеб для вузов. 6-е изд., перераб, 1235.1kb.
- Тощенко Ж. Т. Социология: Общий курс. 2-е изд., доп и перераб. М.: Юрайт-М, 2001. 527, 49.36kb.
- Фролов И. Т. и др. 3-е изд, 14108.71kb.
- Лаврехин Ф. А. и Панкова С. В. Биология пчелиной семьи. Изд. 2-е, перераб и доп. М.,, 1857.45kb.
- Текст приводится по сборнику Конституции зарубежных государств: Учебное пособие/Сост, 2055.3kb.
- Сборник руководящих документов по заповедному делу, 11587.13kb.
- "Обучение детей технике рисования" Изд. 2-е, перераб и доп. М., «Просвещение», 1970., 1146.19kb.
- Основные модели бухгалтерского учета и анализа в зарубежных странах : учеб пособие, 475.04kb.
Однако часто всего этого можно избежать. Дело в том, что окно обмена с EMS-
памятью для функционирования драйвера EMM386.ЕХЕ не нужно. Оно требуется
только для совместимости со старыми диспетчерами EMS-памяти, которые работали с
настоящей EMS-памятью, расположенной на специальных платах расширения в ком-
пьютере. Большинство программ, работающих с EMS-памятью, в само окно обмена не
лезут и работают независимо от того, есть оно или нет. Поэтому можно попробовать
совсем убрать окно обмена с EMS-памятью указанием параметра FRAME=NONE , напри-
мер:
^ DEVICES: \EXE\MSDOS\EMM386. ЕХЕ 2048 RAM FRAME=NONE
DEVICE=C:\EXE\MSDOS\EMM386.EXE RAM FRAME=NONE
Если используемые Вами программы, работающие с EMS-памятью, не виснут, значит,
все в порядке. В противном случае уберите параметр FRAME=NONE.
3мп"ч:1нпя^ 1. Вы можете также использовать параметр FRAME=ac)pec для задания в ше-
стнадцатеричном виде адреса сегмента "окна" дополнительной памяти (например,
FRAHE=EOOO).
2. Возможность преобразования расширенной памяти в EMS-память в MS DOS 6.0 была
усовершенствована. До этого (в MS DOS 5.0) созданная драйвером EMM386 EMS-память
уже не могла быть использована, как расширенная память, даже если она была свободна.
Ясно, что это было очень неудобно.
40.8. Доступ к устройствам хранения данных
Почему здесь нужны
лрлинсры
Доступ
к компакт-лискам
BIOS компьютера содержит программы для доступа только к таким устройствам хра-
нения данных, как дискеты и жесткие диски. Если на компьютере установлены какие-
либо иные устройства хранения данных: дисководы для компакт-дисков, магнитоопти-
ческие диски, стримеры и т.д., то доступ к ним должен обеспечиваться специальными
драйверами или программами. Без этих драйверов или программ данные устройства
будут "не видны" прикладным программам, и пользователь не сможет с ними работать.
Поэтому на жесткий диск компьютера необходимо записать драйверы и программы,
обеспечивающие доступ к таким устройствам хранения данных, и включить в файлы
CONFIG.SYS и AUTOEXEC.BAT команды для вызова этих программ и драйверов. Ка-
кие именно драйверы здесь необходимы, зависит от устройств и их контроллеров, по-
этому обычно драйверы и рекомендации по их установке поставляются вместе с уст-
ройствами или контроллерами.
Организация данных на компакт-дисках отличается от принятой для жестких дисков и
дискет, поэтому программы работы с дисками, записанные в BIOS компьютера, не
умеют читать компакт-диски. Формат хранения информации на компакт-дисках стан-
дартизирован, поэтому для его обработки в MS DOS имеется стандартная программа
MSCDEX.EXE. А вот драйверы, обеспечивающие физический доступ к компакт-диску,
бывают разными, поскольку дисководы для компакт-дисков и их контроллеры могут
весьма отличаться друг от друга. Таким образом, для обеспечения работы с дисководом
для компакт-дисков в DOS необходимо подключить:
Х драйвер (или драйверы), обеспечивающие физический доступ к компакт-диску;
Х программу MSCDEX.EXE, которая позволяет пользователю и программам работать
с компакт-диском так же, как с большой дискетой (только с защитой от записи).
Например, для SCSI-дисководов, подключаемых к SCSI-контроллеру фирмы Adaptec,
необходимо наличие двух драйверов: ASPInDOS.SYS (где п Ч цифра или буква, зави-
сящая от версии контроллера) и ASPICD.SYS. Первый из этих драйверов обеспечивает
интерфейс ASPI доступа к SCSI-устройствам, а второй непосредственно отвечает за
доступ к компакт-дискам. Эти драйверы содержатся в комплекте программ EZЧSCSI,
поставляемом вместе со SCSI-контроллерами фирмы Adaptec. Формат их вызова в
файле CONFIG.SYS может быть таким (вместо команды DEVICE может использовать-
ся DEVICEHIGH):
^ DEVICE=C: \EXE\SCSI\ASP18DOS. SYS
DEVICE=C:\EXE\SCSI\ASPICD. SYS /D: CDDRIV01
Здесь предполагается, что драйверы находятся в каталоге С: \ ЕХЕ \ SCSI, а дисководу
компакт-дисков присваивается имя CDDRIV01 (это имя понадобится при вызове драй-
вера MSCDEX, см. ниже). Обычно для присвоения имени используется параметр /D.
Часть 8. Настройка конфигурации MS DOS
Доступ к съемным
дискам
А команда вызова программы MSCDEX.EXE обычно вставляется в файл
AUTOEXEC.BAT. Эта команда может быть такой:
^ С: \EXE\MSDOS\MSCDEX. EXE /D: CDDRIV01
Здесь предполагается, что программ находится в каталоге C:\EXE\MSDOS, а
CDDRIV01 Ч то самое имя, которое было присвоено дисководу при вызове драйвера,
обеспечивающего физический доступ к компакт-диску.
Доступ к съемным дискам, отличным от компакт-дисков (магнитооптическим, lornega,
SyQuest, флоптическим и т.д.), осуществляется проще, чем к компакт-дискам Ч ведь
данные на них обычно организованы так же, как на жестких дисках. То есть программ
типа MSCDEX.EXE, обеспечивающих расшифровку формата хранения данных на дис-
ке, здесь не требуется. Однако драйвер для доступа к съемным дискам нужен, он обра-
батывает смену дисков и другие особенности данных устройств.
Например, для дисководов для съемных дисков, подключаемых к SCSI-контроллеру
фирмы Adaptec, необходимо наличие двух драйверов: ASPInDOS.SYS (где п Ч цифра
или буква, зависящая от версии контроллера) и ASPIDISK.SYS. Первый из этих драй-
веров обеспечивает интерфейс ASPI доступа к SCSI-устройствам, а второй отвечает за
обработку особенностей съемных дисков. Формат их вызова в файле CONFIG.SYS
может быть таким (вместо команды DEVICE может использоваться DEVICEHIGH):
^ DEVICE=C: \EXE\SCSI\ASP18DOS. SYS
DEVICE=C: \EXE\SCSI\ASPIDISK. SYS
/D
Здесь предполагается, что драйверы находятся в каталоге С: \ EXE \ SCSI.
40.9. Кэширование дисков
Зачем это нужно
Виды кэширования
Кэширование
записи
Многие программы в ходе своей работы производят весьма интенсивный обмен данны-
ми с жестким диском, поэтому Вы можете значительно ускорить их выполнение за
счет кэширования диска и правильной его настройки. Кэширование Ч это использова-
ние специального буфера (кэша), в котором хранятся наиболее часто используемые
участки дисков. Использование кэша обеспечивает практически мгновенный доступ к
наиболее часто используемым участкам диска, за счет чего средняя скорость операций
ввода-вывода может увеличиться в несколько раз. Кроме того, при этом продлевается
срок службы жестких дисков за счет уменьшения нагрузки на них.
Кэширование бывает программное и аппаратное. При программном кэшировании на
компьютере запускается специальная программа, которая организует в оперативной
памяти компьютера кэш-буфер (обычно размером в несколько Мбайт) и управляет
этим кэш-буфером. При аппаратном кэшировании кэш-буфер и управляющая им про-
грамма находятся на плате контроллера дисков. Такие контроллеры, естественно, до-
роже обычных, однако разница в стоимости частично компенсируется тем, что при их
использовании не требуется отводить часть оперативной памяти под кэш-буфер. Уве-
личение скорости ввода-вывода при одинаковом объеме кэш-буфера при программном
и аппаратном кэшировании приблизительно одно и то же, но при аппаратном кэширо-
вании несколько меньше нагрузка на процессор. Кроме того, никакое зависание ком-
пьютера не способно повлиять на работу аппаратного кэша. Поэтому в серверах ло-
кальных сетей и RAID-контроллерах часто используют именно аппаратное кэширова-
ние.
В дальнейшем мы рассмотрим только вариант программного кэширования (он гораздо
более распространен).
Многие программы кэширования могут обеспечивать не только кэширование операций
чтения, но и операций записи на диски. Это делается следующим образом: при выпол-
нении операций записи на диск данные не записываются сразу на диск, а помещаются
в кэш. После этого программе, осуществляющей запись, сообщается об окончании за-
писи, и она продолжает работу. А уж затем, в наиболее удобные моменты (скажем,
при паузах в работе остальных программ), данные сбрасываются из кэша на диск. Это
ускоряет работу программ, позволяет оптимизировать операции записи на диск и даже,
как правило, уменьшить их количество. Так, при записи на дискету множества не-
больших файлов кэширование ускоряет запись в несколько раз.
Глава 40. Настройка конфигурации DOS
Прогрэмм1,1 дня
>'.. "/."-;< Ч'Н;'Ч1ИЯ ^l;"i.')f!
..Запуск ! 1Н(И1.),1МЛ.1'.1
^ SMAPTOW. F-'XE
Параметры
Режимы кэширорания
ОТДР^ЬНЫХ дисков
Однако кэширование записи не вполне безопасно: при зависании компьютера или от-
ключении электропитания данные из кэша могут оказаться не записанными на диск,
что может привести к повреждению файловой системы на дисках (скажем, если ис-
правления в системных областях диска были записаны на диск лишь частично). По-
этому кэширование записи применяется не всегда. Обычно рекомендуется при исполь-
зовании кэширования записи на диски применять устройство бесперебойного питания
(UPS) Ч это значительно уменьшит вероятность повреждения данных на диске.
Программы для кэширования дисков входят в DOS, а также поставляются различными
фирмами. Например, в MS DOS входит программа SmartDrive (SMARTDRV.EXE), в
Norton Utilities Ч Norton Cache (NCACHE2.EXE) и т.д. Наиболее часто применяется
входящая в MS DOS программа SMARTDRV.EXE, использование которой мы и рас-
смотрим в этом параграфе.
При запуске программа SMARTDRV.EXE устанавливает себя резидентно в оператив-
ной памяти, включает кэширование дисков и позволяет задать параметры кэша. Кэш
эта программа размещает в расширенной памяти.
Обычно команда для первого запуска программы SMARTDRV.EXE включается в файл
AUTOEXEC.BAT. Упрощенный формат команды:
^,nуmь-к-npoгpaммe'\)S^Лfi^nJDF^\/CB(E')
(размер-кэша {размер-кэша-под-Windows^} (/X]
Здесь путь-к-программе указывает путь к файлу SMARTDRV.EXE.
Размеры кэша задаются двумя параметрами:
размер-кэша Ч указывает размер кэша (в Кбайтах) при работе в DOS;
размер-кэша-под-Windows Ч указывает размер кэша (в Кбайтах) при работе в
Windows.
Параметр /X , если он задан, запрещает кэширование операций записи со всеми дис-
ками, кроме тех, для которых оно явно включено (параметром буква-даска+, см. ни-
же).
Примеры Ниже предполагается, что файл SMARTDRV.EXE находится в каталоге C:\EXE\MSDOS.
C:\EXE\HSDOS\SHARTDRV.EXE 2048 1536 Ч размер кэша 2048 Кбайт (2 Мбайта) при работе в
DOS, 1536 Кбайт (1,5 Мбайта) при работе в Windows.
. C:\EXE\MSDOS\SMARTDRV.EXE /X Ч размер кэша устанавливается по умолчанию, кэширование
1 записи запрещено.
Замечания. 1. Для кэширования дисков программой SMARTDRV необходимо, чтобы ком-
пьютер был оснащен расширенной памятью и чтобы диспетчер расширенной памяти
(например, HIMEM.SY^) был загружен до запуска программы SMARlDRV. Для кэширова-
ния компакт-дисков необходимо, чтобы программа MSCDEX была запущена до
SMARTDRV.
2. По моему опыту, обычно хорошие результаты обеспечивает указание размера кэша рав-
ным одной четвертой объема оперативной памяти компьютера, но не более 8 Мбайт. Мож-
но вообще воздержаться от указания размеров кэша Ч предлагаемые по умолчанию разме-
ры кэша вполне разумны.
3. Сжатые диски, созданные программами DriveSpace и DoubleSpace, программой
SMARTDRV на самом деле не кэшируются, вместо них кэшируются диски, на которых рас-
положены файлы, содержащие информацию этих дисков.
4. Программа SMARTDRV.EXE может вызываться повторно для управления кэшированием,
сброса содержимого кэша на диск (это может быть неооходимо перед выключением компь-
ютера), получения справок о параметрах и эффективности кэширования. Для сброса со-
держимого кэша на диск программа вызывается SMARTDRV /С , для получения отчета Ч
SHARTDRV /S или просто SHARTDRV .
5. Графическая оболочка Windows 95 сама осуществляет кэширование дисков, поэтому при
работе в Windows 95, а также при запуске DOS-программ из-под графической оболочки
Windows 95, программа SMARTDRV.EXE не нужна. Но при работе без графической обо-
лочки Windows 90, то есть в режиме "единственного приложения MS DOS" или при за-
грузке Windows 95 без запуска графической оболочки, программа SMARTDRV.EXE нужна,
для чего она и присутствует в составе Windows 95.
При необходимости Вы можете задать режимы кэширования для отдельных дисков:
кэширование чтения и записи, только чтения или отмена кэширования. Это можно
сделать как при первом запуске программы SMARTDRV, так и впоследствии, вызвав
программу SMARTDRV из командной строки DOS. Режимы кэширования для дисков
задаются следующими параметрами:
^ Часть 8. Настройка конфигурации MS DOS
буква-диска+
буква-диска-
буква-диска
кэшировать операции чтения и записи с диском;
отменить кэширование указанного диска;
кэшировать операции чтения с указанным диском, а операции
записи Ч нет.
Примеры
/'^ч<"^^нi^^Х^
'.^уф<'l.nХ13iir^и;-^
Пример
^),шf.'Х<,.^
д11ска(,+\-~) , то этот режим (режим по умолчанию) устанавливается следующим образом.
Диски, доступные по локальной сети, а также электронные диски, не кэшируются вовсе.
Дисководы для дискет и компакт-дисков кэшируются только по чтению. А жесткие диски
кэшируются и по чтению, и по записи, а если Вы задавали параметр /X Ч то только по
чтению.
SHARTDRV /X D+ Ч установить кэширование дисков с размером кэша и другими параметра-
ми по умолчанию, кэширование записи отменить для всех дисков, кроме диска D: .
SHARTDRV А- Ч отменить кэширование для диска А:.
SMARTDRV А+ Ч установить кэширование чтения и записи для диска А:.
Некоторые устаревшие контроллеры жестких дисков не могут выполнять операции
ввода-вывода с жесткими дисками, если буфера ввода-вывода располагаются не в
обычной, а в верхней памяти. Программа SMARTDRV имеет параметр /L, при котором
ее буфера располагаются в обычной памяти, но это приводит к большому расходу
обычной памяти (около 16 Кбайт). Более экономное решение Ч использование двой-
ной буферизации, при котором в обычной памяти располагается специальный буфер
обмена с диском, а небольшой драйвер при выполнении операций ввода-вывода пере-
сылает данные из буферов кэша в буфер обмена с диском и наоборот. При этом расхо-
дуется около 2 Кбайт обычной памяти, но слегка повышается нагрузка на процессор.
В MS DOS версий 6.0Ч6.22 для включения задания двойной буферизации следует
включить в файл CONFIG.SYS следующую строку:
DEVICE=Cnt/mb-K-^auee^\DSMARTDRV.EXE /DOUBLE_BUFFER
В MS DOS 7.0 следует включить в файл MSDOS.SYS параметр Dout)leBuffer=1 или
вставить в файл CONFIG.SYS строку:
DEVICE=Cni/mt,-K-(3pauecpt/\jDBLBUFF.SYS
Ниже предполагается, что файл SMARTDRV.ЕХЕ находится в каталоге C:\EXE\MSDOS.
DEVICE=C:\EXE\HSDOS\SMARTDRV.EXE /DOUBLE BUFFER Ч включение двойной буферизации в
файле CONFIG.SYS. Версия MS DOS Ч от'6.0 до 6.22.
З.мсчппи^. Чтобы узнать о том, используется ли на самом деле двойная буферизация или
нет, можно ввести команду SMARTDRV. Она отобразит на экране таблицу Disk Caching
Status. Если в столбце Buffering этой таблицы для всех дисков (строк таблицы) стоит No,
значит, двойная буферизация не используется, и вызов драйвера двойной буферизации
можно убрать.
40. 10. Рекомендации по написанию файла CONFIG.SYS
Назначение
Формат файла
CONFIG.SYS
В предыдущих параграфах этой главы мы уже рассказывали о назначении и формате
файла CONFIG.SYS и давали рекомендации о командах, которые желательно помес-
тить в файл CONFIG.SYS. Ниже мы подытожим эти сведения и рекомендации, а также
расскажем о "технических" командах файла CONFIG.SYS, описывающих характери-
стики внутренних структур DOS.
Файл CONFIG.SYS содержит команды, используемые при начальной загрузке DOS.
Эти команды задают параметры DOS, а также указывают, какие драйверы (то есть про-
граммы, расширяющие возможности операционной системы), необходимо загрузить в
оперативную память. Файл CONFIG.SYS должен находиться в корневом каталоге дис-
ка, с которого загружается DOS. Если файл CONFIG.SYS там отсутствует, то парамет-
ры DOS будут установлены по умолчанию.
Замечание. При изменении файла CONFIG.SYS соответствующие параметры конфигура-
ции системы изменятся только после перезагрузки DOS.
Файл CONFIG.SYS должен представлять собой текстовый файл. Большинство строк
этого файла содержит команды, выполняемые при начальной загрузке DOS. Такие
строки имеют вид:
имя-команды = значение
^ Глава 40. Настройка конфигурации DOS
Выполнение файла
CONFIG.SYS
Команды файла
CONFIG.SYS .
Загрузка драйверов
и программ
Примеры
Кроме того, в файле CONFIG.SYS могут содержаться следующие строки:
Х комментарии Ч строки, игнорируемые при начальной загрузке DOS. Строки ком-
ментариев начинаются либо с символа ";", либо с символов "REM" (в любом реги-
стре) с последующим пробелом;
Х заголовки блоков Ч строки, в которой приводится (начиная с первой колонки)
имя блока в квадратных скобках. Заголовок блока предваряет строки с командами,
относящимися к данному блоку. Команды из блока могут выполняться или не вы-
полняться, в зависимости от выбора пользователя в стартовом меню (см. ниже).
Если в файле CONFIG.SYS нет заголовков блоков, то команды этого файла выполня-
ются по очереди, в том порядке, в котором они указаны в файле CONFIG.SYS. Строки
комментариев игнорируются.
Если же в файле CONFIG.SYS имеются заголовки блоков, то в блоке [MENU] должно
задаваться стартовое меню, выводимое в начале выполнения файла CONFIG.SYS.
Пользователь должен выбрать один из пунктов этого меню, после чего DOS начинает
выполнение файла CONFIG.SYS, но выполняются лишь команды из блока, соответст-
вующего выбранному пользователем пункту меню, а также из блока [COMMON]. Содер-
жимое остальных блоков игнорируется (как и строки комментариев). При выполнении
блока его команды выполняются по очереди. Команды для организации стартового ме-
ню, а также примеры их применения, приведены в параграфе 40.14.
Зямгчцния. 1. Если в команде файла CONFIG.SYS перед знаком "=" поставить знак во-
проса, то при выполнении файла CONFIG.SYS DOS выведет команду на экран и спросит,
надо ли ее выполнять "(Y/Nl ?". Подробнее это изложено в параграфе 40.15.
2. Начиная с версии MS DOS 6.20, команды файла CONFIG.SYS можно выполнять с под-
тверждением для каждой команды. Для этого при появлении в процессе начальной загрузки
DOS сообщения "Starting MS-DOS" надо нажать {HQ или (Ctrl) (7^). Подробнее это описа-
но в главе 15.
3. Если в начале файла CONFIG.SYS нет заголовка блока, считается, что там стоит заголо-
вок [COMMON], то есть строки файла CONFIG.SYS до первого заголовка блока выполня-
ются всегда.
4. Если в файле CONFIG.SYS нет блока [MENUl, то в нем выполняются только блоки
ICOMMONT
Ниже мы перечислим наиболее часто используемые команды файла CONFIG.SYS.
Очень важная группа команд файла CONFIG.SYS служит для загрузки драйверов и
резидентных программ:
DEVICE = имя-файла-драйвера ^параметры] Ч загрузка драйвера в обычную па-
мять;
DEVICEHIGH = имя-файла-драйвера ^параметры) Ч загрузка драйвера в верхнюю
память (то есть в память с адресами от 640 Кбайт до 1 Мбайта);
INSTALL = полное-имя-программы ^параметры) Ч установка резидентной програм-
мы.
Замечания. 1. Команда DEVICEHIGH позволяет указать регион верхней памяти, в кото-
рый загружается драйвер. Однако обычно этот режим вручную не указывается, а задается
программами оптимизации файлов CONFIG.SYS и AUTOEXEC.BAT типа MemMaker.
2. Для загрузки драйвера в верхнюю память необходимо, чтобы в файле CONFIG.SYS был
запущен драйвер верхней памяти (типа EMM386) и содержалась строка OOS=UMB или
DOS=HIGH,UHB.
3. Загрузка резидентной программы с помощью команды файла CONFIG.SYS Install отлича-
ется от обычного запуска резидентной программы тем, что для запускаемой программы не
резервируется место для хранения переменных окружения. Это несколько экономит па-
мять, но приводит к несовместимости: не все программы могут быть установлены с помо-
щью команды Install.
4. К сожалению, команда Install позволяет загружать резидентные программы только в
обычную память. Аналог команды Install Ч InstallHigh, Ч позволяющий загружать рези-
дентную программу в верхнюю память, появился только в MS DOS 7.0. Поэтому команда
Install используется редко, вместо этого обычно резидентные программы загружаются из
файла AUTOEXEC.BAT командой LH (LoadHigh).
Выше в этой главе обсуждались следующие команды для загрузки драйверов (мы предпола-
гаем, что файлы MS DOS находятся в каталоге C:\EXE\MSDOS):
DEVICE=C:\EXE\MSDOS\HIHEH.SYS /TESTMEM:OFF Ч загрузка драйвера расширенной памяти
HIMEM.SYS (см. п. 40.7), проверка расширенной памяти при запуске драйвера отключе-
на: