Только для программ в формате .com. Для .exe программ используйте функцию 31h прерывания 21h Вход:
DX = адрес первого байта за резидентным участком программы (DX интерпретируется как смещение от PSP (DS/ES при запуске)
Возвращает управление DOS, оставляя часть памяти распределенной, так что последующие программы не будут перекрывать программный код или данные в этой памяти.
INT 27h - это традиционный метод установки программ обслуживания прерываний и пользовательских таблиц данных. Функция 31h (KEEP) - гибкая альтернатива этому.
INT 27h (и все типы выходов в DOS) восстанавливает векторы INT 22h-24h из PSP завершающейся программы. Поэтому этот сервис нельзя использовать для установки постоянного обоаботчика критических ошибок или обработчика Ctrl-Break.