Содержание
- 2. Системные механизмы диспетчеризация ловушек, в т.ч. прерываний, DPC (deferred procedure call), APC (asynchronous procedure call), исключений
- 3. 1. Диспетчеризация ловушек
- 4. Ловушки (trap) Прерывания (interrupt) – асинхронные события, которые могут произойти в любой момент, генерируемые, в основном,
- 5. Типовые ситуации активизации обработчика ловушек Прерывания Вызов системного сервиса Аппаратные исключения Программные исключения Исключения, связанные с
- 6. Общие принципы обработки ловушек Возникновение прерывания или исключения Переключение на стек режима ядра (если прерванный процесс
- 7. Аппаратные прерывания Генерируется устройствами ввода-вывода с целью получить от процессора время на их обслуживание Могут генерироваться
- 8. Обработка аппаратных прерываний Контроллер прерываний Устройство Процессор IRQ … IDT (interrupt dispatch table) IRQ транслируется в
- 9. Уровень запросов прерываний (IRQL) IRQL – interrupt request level – показывает, какие прерывания могут быть получены
- 10. Уровни запросов прерываний (на платформе x86)
- 11. Уровни запросов прерываний (на платформе х64 и IA64)
- 12. Маскировка прерываний Прерывания могут быть замаскированы, т.е. их получение PIC не может быть выполнено, если для
- 13. Маскировка прерываний
- 14. Маскировка прерываний на уровне HAL Обращение к PIC – медленная операция, поэтому реально она фактически не
- 15. Связь прерываний и IRQL Механизм IRQL, реализованный в Windows, не поддерживается аппаратно Конкретные устройства определяются в
- 16. Уровень ядра: объект прерывания
- 17. Программные прерывания Диспетчеризация или DPC Обработка прерываний, не критичных во времени Обработка событий таймеров APC Асинхронный
- 18. Прерывания DPC или диспетчеризация Для выполнения отложенных операций диспетчеризации процессов, например, при перераспределении процессорного времени на
- 20. Скачать презентацию