Операционная система MS DOS (том 2)


3. Управление памятью


В MS-DOS версии 5.0 стал документирован блок управления памятью MCB. Приведем формат этого блока.

(00h) 1 Тип блока: 4Dh для всех блоков, кроме последнего. Для последнего блока используется значение 5Ah.
(01h) 2 Сегментный адрес блока PSP

программы-владельца данного MCB или значение 0008h

для MCB, принадлежащего MS-DOS. Для свободного блока MCB в этом поле находится значение 0000h.

(03h) 2 Размер блока MCB в параграфах.
(05h) 3 Не используются.
(08h) 8 ASCII-имя программы-владельца блока MCB, если это блок PSP.

Самый первый блок MCB является сегментом данных MS-DOS. Он делится на подсегменты, в которых расположены драйверы, системные данные, буфера и т.д.

Приведем формат управляющего блока подсегмента для первого блока MCB. Этот управляющий блок расположен непосредственно перед соотвестсвующим ему подсегментом.

(00h) 1 Тип подсегмента:

"D" - драйвер устройства;

"E" - расширение драйвера устройства;

"I" - драйвер инсталлируемой файловой системы IFS;

"F" - область памяти для управляющего блока оператора "FILES=";

"X" - область памяти для управляющего блока оператора "FCBS=";

"C" - рабочая область для буферов EMS, если используется оператор "BUFFERS /X";

"B" - рабочая область для буферов, если используется оператор "BUFFERS";

"L" - область памяти для массива структур текущих каталогов;

"S" - сегмент памяти для оператора "STACKS=";

"T" - сегмент памяти для оператора "INSTALL=".

(01h) 2 Параграф, начиная с которого располагается данный подсегмент. Обычно это следующий за управляющим блоком параграф.
(03h) 2 Размер подсегмента в параграфах.
(05h) 3 Не используются.
(08h) 8 Для подсегментов "I" и "D"

в этом поле находится имя файла, из которого был загружен драйвер.

Кроме рассмотренных выше, в MS-DOS версии 5.0 появился новый тип управляющего блока памяти - UMCB




- Начало -  - Назад -  - Вперед -