D.2.1. Базовая память.
Со времен микропроцессора 8088 здесь находятся все исполняемые программы, в том числе и операционная система. Эта преемственность сохранилась до сих пор. В самом начале этой области находится:
- Таблица векторов прерываний. Она всегда находится в диапазоне адресов 0000:0000h - 0000:0400h (первый килобайт памяти). Таблица определяет адреса прерываний - готовых процедур операционной системы, которые компьютер вызывает для выполнения определенной задачи. Программы прерываний стандартизованы для всех операционных систем фирмы Microsoft.
- Файл надстройки над системой BIOS - файл IO.SYS. В этом файле находятся программы-прерывания ввода/вывода, специфичные для операционной системы Microsoft.
- Система обработки прерывания (Int 21h) системы MS-DOS - файл MSDOS.SYS
Примечание: эта часть отсутствует в операционных системах Windows. Она целиком помещается в файле IO.SYS.
- Стеки операционной системы MS-DOS. Эти стеки используются исключительно программами - прерываниями операционной системы. Число стеков варьируется в MS-DOS в пределах от 8-ми до 64-х, а их размер - от 32-х до 512-ти байт. Стеки устанавливаются командой STACKS в файле Config.sys.
- Системное окружение. Здесь расположены переменные окружения операционной системы (задаваемые командами SET, PATH, Prompt, Lastdrive и некоторыми другими.) Размер системного окружения задается в опциях команды SHELL файла Config.sys.
- Буфера ввода/вывода дисковых накопителей. Число буферов ввода/вывода задается командой Buffers файла Config.sys. На каждый буфер выделяется по 532 байта.
- Дескрипторы открытых файлов. На каждый дескриптор отводится 64 байта. Число дескрипторов устанавливается командой FILESфайла Config.sys.
- Драйверы, запускаемые командой Device файла Config.sys. Среди них могут быть драйверы расширенной памяти Himem.sys, дополнительной памяти Emm386.exe, а также совмещенный драйвер Quemm386.sys.
- Резидентные программы, загружаемые в память командой Install файла Config.sys.
- Резидентная часть командного процессора Command.com.
- Резидентные программы, загружаемые из файла Autoexec.bat и командной строки.
Вся остальная базовая память доступна для программ MS-DOS.
Общий объем базовой памяти, занятой системными программами, не должен превышать 256 Кбайт, а рекомендуемый максимальный размер этой области - 128 Кбайт. Только при свободном объеме 512 Кбайт большинство программ DOS будут чувствовать себя комфортно. Конечно, любой драйвер подключенного к компьютеру устройства, любая запущенная резидентная программа забирает под свои нужды определенную часть памяти, и лимит в 128 Кбайт может быть достигнут очень быстро. Чтобы избежать этого, возможны два сценария:
- (Для MS-DOS версий 5.0 и выше.) Загрузить большинство резидентных программ и драйверов, а также часть основных файлов MS-DOS в верхнюю и старшую память.
- (Для всех операционных систем.) Создать несколько конфигураций из файлов Config.sys и Autoexec.bat (или им подобных), содержащих необходимый минимальный набор драйверов и резидентных программ, и переключаться между конфигурациями путем перезагрузки компьютеров.
Любой из сценариев имеет свои достоинства и недостатки. Поэтому выбор любого сценария либо их комбинации должен решаться индивидуально.
Содержание раздела