Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Программные прерывания



Программное прерывание реализует один из способов перехода на подпрограмму с помощью специальной инструкции процессора, например, INT в процессорах Intel Pentium. При выполнении команды программного прерывания процессор отрабатывает ту же последовательность действий, но только происходит это в предсказуемой точке программы – там, где программист поместил данную команду [2].

Практически все современные процессоры имеют в своей системе команд инструкции программных прерываний. Одной из причин их появления является то, что их использование часто приводит к более компактному коду программ по сравнению с использованием стандартных команд выполнения процедур. Это объясняется тем, что разработчики процессора обычно резервируют для обработки прерываний небольшое число возможных подпрограмм. Поэтому длина операнда в команде программного прерывания, который указывает на нужную подпрограмму, меньше, чем в команде CALL перехода на эту подпрограмму. Например, в процессоре x86 предусмотрена возможность применения 256 программ обработки прерываний, поэтому в инструкции INT операнд имеет длину в 1 байт. Значение операнда команды INT просто является индексом в таблице из 256 адресов подпрограмм обработки прерываний, один из которых и используется для перехода по команде INT. А при использовании команды CALL потребовался бы уже код длиной в 2 или 4 байта. Другой причиной применения программных прерываний вместо обычных инструкций вызова подпрограмм является возможность смены пользовательского режима на привилегированный одновременно с вызовом процедуры [2].

В результате программные прерывания часто используются для выполнения ограниченного числа вызовов функций ядра ОС – системных вызовов.





Дата публикования: 2015-10-09; Прочитано: 398 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...