ms-dos api-вызовы жестко запрограммированы в exe? - PullRequest
1 голос
/ 16 ноября 2010

если я правильно помню, когда dos загружает программу, программа получает возможность использовать весь процессор, то есть dos ничего не делает за это время, но почему-то это не имеет значения для меня, то есть вызовы API все еще должны бытьоценены.вызовы API жестко запрограммированы в программе, когда файл ASM собран и связан?причина, по которой я хочу это знать, заключается в том, что мне нужно знать, является ли кеш полностью свободным для exe, чтобы экспериментировать с оптимизацией кеша.

1 Ответ

3 голосов
/ 16 ноября 2010

Вы правильно помните, DOS - это однозадачная операционная система. Когда ваша программа запускается, она получает полный контроль над процессором.

Вызовы API DOS выполняются через прерывание INT 21. Когда вы вызываете функцию API, регистры загружаются с соответствующими параметрами и вызывается прерывание INT 21. Затем элемент управления возвращается в операционную систему, которая обрабатывает запрос, а затем передает элемент управления обратно в ваше приложение.

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

...