DOS, функция 26h Создать новый PSP
Вход:
AH=26h
DX - адрес сегмента (параграфа) для нового PSP
CS - сегмент PSP, используемый как шаблон для нового PSP
(Таблица Б-4)
Описание.
Устанавливает PSP для порождаемого процесса по адресу DX:0000.
Текущий PSP (lOOh байт, начиная с CS:0) копируется в DX:OOOOh, поле
МетТор соответственно корректируется, векторы Terminate, Ctrl-Break
и Critical Error копируются в PSP из векторов прерываний INT 22h,
INT 23h и INT 24h. После этого можно загрузить программу с диска
и передать ей управление посредством FAR JMP.
Примечание.
Если перехватывается INT 21h, нужно позаботиться о помещении в стек
корректного CS:IP. Еще лучше использовать функцию 4Ch.
Таблица Б-4. Формат PSP.
Смещ. | Размер | Описание | |
+00h | 2 байта | Инструкция INT 20h | |
+02h | слово | Сегмент первого байта памяти, выделенной программе | |
+04h | байт | Неиспользуемый заполнитель | |
+05h | байт | СР/М системный вызов | |
+06h | слово | Первый сегмент для СОМ-файла | |
+08h | 2 байта | Запоминаются FARJMP 05h | |
+OAh | двойное слово | Хранит INT 22h (адрес завершения) | |
+OEh | двойное слово | Хранит INT 23h (адрес обработчика Ctrl-Break) | |
+12h | двойное слово | Хранит INT 24h (адрес обработчика критической ошибки) |
|
+16h | слово | Сегмент родительского PSP | |
+18h | 20 байт | Рабочая таблица файлов. Один байт на файл (FFh - закрыт) |
|
+2Ch | слово | Сегмент среды окружения для процесса | |
+2Eh | двойное слово | SS:SP на входе при последнем вызове прерывания INT 21 h |
|
+32h | слово | Количество входов в рабочей таблице файлов (по умолчанию 20) |
|
+34h | двойное слово | Указатель на рабочую таблицу файлов (по умолчанию PSP:0018h) |
|
+38h | двойное слово | Указатель на предыдущий PSP | |
+3Ch | 4 байта | Зарезервировано | |
+40h | 2 байта | Версия при возврате на INT 2 lh (AH=30h) | |
+42h | 26 байт | Зарезервировано (используется MS Windows и версиями DOS выше 6.00) |
|
+5Ch | 16 байт | Первый FCB по умолчанию ' | |
+6Ch | 16 байт | Второй FCB по умолчанию | |
+7Ch | 4 байта | Не используются | |
-i-ent, | 1 Ой Й-.Д.Т. |
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий