Пример определения нескольких конфигураций

Приведем файлы CONFIG.SYS и AUTOEXEC.BAT, в которых определены четыре различных конфигурации. Первая конфигурация предназначена для работы в среде MS-DOS. Остальные три конфигурации относятся к операционной системе Windows. Первая конфигурация Windows позволяет получить больше расширенной памяти для приложений, вторая оставляет больше памяти программам MS-DOS, запускаемым из Windows и последняя позволяет увеличить скорость работы системы. [Menu]

MENUITEM=MsDos, Конфигурация для работы в MS-DOS

MENUITEM=WinMoMem, Windows, больше расширенной памяти

MENUITEM=WinMoDos, Windows, больше памяти для MS-DOS MENUITEM=WinSpeed, Windows, увеличение скорости

MENUCOLOR=l 5,1

MENUDEFAULT=WinSpeed,7

[Common]

DEVICE=C:\DOS\HIMEM. SYS

DOS=HIGH

[MsDos]

DEVICE=C:DOS\EMM386 NOEMS

DOS=HIGH,UMB

[WinMoMem]

DOS=HIGH

[WinMoDos]

DE VICE=C: DOS\EMM386 NOEMS

DOS=HIGH,UMB

[WinSpeed]

DEVICE=C:\DOS\RAMDRIVE.SYS 2048 /Е

[Common] FILES=40

Файл CONFIG.SYS, представленный выше, состоит из нескольких блоков. Первый блок с именем [Main] содержит описание меню из четырех строк. Меню отображается белыми символами на синем фоне.

Конфигурация для работы в MS-DOS Windows, больше расширенной памяти Windows, больше памяти для MS-DOS Windows, увеличение скорости

Если в течении 7 секунд после отображения меню вы не выберите какую-нибудь строку меню, автоматически выбирается строка "Windows, увеличение скорости".

После выбора конфигурации, нажмите клавишу <Enter>. Для всех конфигураций исполняются команды, находящиеся в первом блоке [Common]. В нем расположены две. команды: DEVICE=C:\DOS\HIMEM.SYS и DOS=HIGH. Эти команды загружают драйвер управления расширенной памятью HIMEM.SYS, и разрешают MS-DOS использовать область старшей памяти.

После этого будут выполнены команды из блока, соответствующего выбранному элементу меню - [MsDos], [WinMoMem], [WinMoDos] или [WinSpeed]. Коротко опишем команды из каждого перечисленного блока. "Конфигурация для работы в MS-DOS". В блоке [MsDos] представлена конфигурация для операционной системы MS-DOS. Чтобы увеличить объем свободной стандартной памяти, доступной программам, загрузим драйверы и резидентные программы в расширенную память. Остальную расширенную память отведем под буфер дискового кеша. Драйвер дискового кеша устанавливается позже, в файле AUTOEXEC.BAT. "Windows, больше расширенной памяти". Блок [WinMoMem] определяет конфигурацию для максимального освобождения расширенной памяти. В этом случае резидентные программы и драйверы не загружаются в расширенную память. Чтобы освободить больше расширенной памяти, уменьшим также размер буфера дискового кеша в файле AUTOEXEC.BAT.

"Windows, больше памяти для MS-DOS". Блок [WinMoDos] содержит конфигурацию, в которой при работе в операционной системе Windows освобождается максимум стандартной памяти для программ MS-DOS. Чтобы увеличить объем свободной стандартной памяти, доступной программам, драйверы и резидентные программы загружаются в расширенную память. Часть остальной расширенной памяти отведена под буфер дискового кеша, а часть оставлена для Windows.

"Windows, увеличение скорости". Блок [WinSpeed] содержит конфигурацию, позволяющую ускорить работу приложений Windows и программ MS-DOS, запущенных из Windows. Для ускорения работы системы, подключен драйвер электронного диска RAMDRTVE.SYS. У вас появится еще один логический диск, например

Е:, на котором создайте каталог TEMP для временных файлов. Чтобы временные файлы создавались на электронном диске, в файле AUTOEXEC.BAT определите переменную среды TEMP.

В заключение выполняется команда files=40, расположенная в последнем блоке [Common]. На этом интерпретация файла CONFIG.SYS заканчивается и MS-DOS начинает выполнять командный файл AUTOEXEC.BAT.

В файле AUTOEXEC.BAT организуем ветвление, основываясь на конфигурации, выбранной в меню файла CONFIG.SYS:

PATHC:\WIN;C:\DOS;C:\NORTON;C:\UT;D:\WINWORD;

C:\DOS\MODE >NUL CON CP PREP=((866) C:\DOS\EGA.CPI) C:\DOS\MODE >NUL CON CP SEL=866

LOADHIGH C:\UT\SWAKEYB.COM

GOTO %CONFIG%

:MsDos

DEVICEHIGH=C:\DOS\SM ARTDRV. EXE 8192

C:\NORTON\NC.EXE

GOTO End

:WinMoMem

SET TEMP=C:\TEMP

DEVICE=C:\DOS\SMARTDRV.EXE 2048 512

WIN.COM

GOTO End

:WinMoDos

SET TEMP=C:\TEMP

DEVICEHIGH=C:\DOS\SMARTDRV.EXE 4096 1024 LOADHIGH C:\WIN\MOUSE.COM

WIN.COM

GOTO End

:WinSpeed

SET TEMP=E:\TEMP

DEVICE=C:\DOS\SMARTDRV.EXE 4096 512

C:\WIN\MOUSE.COM

WIN.COM

GOTO End

:End

Когда MS-DOS начинает выполнять команды из файла AUTOEXEC.BAT, сначала происходит установка переменной окружения PATH, затем загружаются шрифты, содержащие символы кириллицы и резидентная программа русификации клавиатуры.

Потом по команде GOTO %CONFIG%, управление передается на метку, соответствующую имени выбранного блока конфигурации в файле CONFIG.SYS. Имена этих блоков конфигурации перечислены в меню в файле CONFIG.SYS.

Таким образом, в зависимости от того, какая конфигурация будет выбрана из меню, управление перейдет на одну из меток - MsDos, WinMoMem, WinMoDos или WinSpeed. При этом для каждой конфигурации выполняются только свои команды. После выполнения команд, следующих за метками, управление переходит на метку End и на этом исполнение командного файла AUTOEXEC.BAT завершается.

Наши рекомендации