Диспетчеризация прерываний в операционных системах реализуется с помощью программного модуля — диспетчера прерываний. subscribe.ru studfile.net Он координирует работу отдельных обработчиков прерываний и реализует верхний уровень планирования всех работ в системе. intuit.ru
Последовательность действий диспетчера прерываний: intuit.ru
- При возникновении сигнала (аппаратное прерывание) или условия (для внутренних прерываний) происходит первичное аппаратное распознавание типа прерывания. intuit.ru
- Если прерывания в данный момент запрещены, то процессор продолжает текущую программу. intuit.ru
- В противном случае вызывается диспетчер прерываний. intuit.ru Он запрещает на некоторое время все прерывания и устанавливает причину прерывания. intuit.ru
- Диспетчер сравнивает приоритет источника прерывания с текущим приоритетом потока команд, выполняемого процессором. intuit.ru
- Если прерывания разрешены и поступивший запрос на прерывание имеет приоритет более высокий, чем текущий поток, то вызывается процедура обработки прерывания. intuit.ru
- Автоматически сохраняется некоторая часть контекста прерванного потока, которая позволит ядру возобновить исполнение потока процесса после обработки прерывания. intuit.ru
- После того как прерывание обработано ядром операционной системы, прерванный контекст восстанавливается и работа потока возобновляется с прерванного места. intuit.ru
Приоритезация прерываний нужна для увеличения скорости выполнения критичных задач. www.prorobot.ru Длительные по времени задачи (копирование больших объёмов данных) выполняются с более низким приоритетом, чем задачи, критичные ко времени исполнения. www.prorobot.ru
Прерывания обслуживаются в порядке их приоритета, и прерывания с более высоким уровнем приоритета получают преимущество в обслуживании. storage.piter.com