Организация прерываний в эвм
Во время выполнения текущей программы, внутри ЭВМ и в связанной с ней внешней среде (например, в технологическом процессе, управляемом ЭВМ) могут возникать события, требующие немедленной реакции на них со стороны ЭВМ.
Реакция состоит в том, что ЭВМ прерывает обработку текущей программы и переходит к выполнению некоторой подпрограмме, специально предназначенной для данного события. По завершении указанной подпрограммы ЭВМ возвращается к выполнению прерванной программы.
Рассматриваемый процесс, называемый прерыванием программ, поясняется на рис.2.14. Принципиально важным является то, что моменты возникновения событий, требующих прерывания программ, заранее неизвестны и поэтому не могут быть учтены при программировании.
Каждое событие, требующее прерывания, сопровождается сигналом, называемым запросами прерывания.
Возможность прерывания программ — важное архитектурное свойство ЭВМ, позволяющее эффективно использовать производительность процессора при наличии нескольких протекающих параллельно во времени процессов, требующих в произвольные моменты времени управления и обслуживания со стороны процессора. В первую очередь это относится к организации параллельной во времени работы процессора и периферийных устройств машины, а также к использованию ЭВМ для управления в реальном времени технологическими процессами.
Основными функциями системы прерывания являются:
запоминание состояния прерываемой программы и осуществление перехода к прерывающей программе
восстановление состояния прерванной программы и возврат к ней.
При наличии нескольких источников запросов прерывания должен быть установлен определенный порядок (дисциплина) в обслуживании поступающих запросов. Другими словами, между запросами должны быть установлены приоритетные соотношения, определяющие, какой из нескольких поступивших запросов подлежит обработке в первую очередь, и устанавливающие, имеет право или не имеет данный запрос прерывать ту или иную программу. Приоритетный выбор запроса для исполнения входит в процедуру перехода к прерывающей программе.
Вектором прерыванияназывается начальный адрес прерывающей программы. В общем случае, каждому запросу прерывания соответствует свой вектор прерывания, способный инициировать выполнение соответствующей прерывающей программы. Векторы прерывания обычно находятся в специально выделенных фиксированных ячейках памяти – таблице векторов прерывания.
Процедура организации перехода к прерывающей программе включает в себя выделение из выставленных запросов такого, который имеет наибольший приоритет.
Различают абсолютныйиотносительный приоритеты. Запрос, имеющий абсолютный приоритет, прерывает выполняемую программу и инициирует выполнение соответствующей прерывающей, программы. Запрос с относительным приоритетом является первым кандидатом на обслуживание после завершения выполнения текущей программы.
Если наиболее приоритетный из выставленных запросов прерывания не превосходит по уровню приоритета выполняемую процессором программу, то запрос прерывания игнорируется или его обслуживание откладывается до завершения выполнения текущей программы.
Простейший способ установления приоритетных соотношений между запросами (уровнями) прерывания состоит в назначении им номеров, при этом прерывания с меньшим номером обладают большим приоритетом. В этом случае приоритет является жестко фиксированным.
В ОС MSDOSиMSWindowsтаблица векторов прерываний занимает 1024 байта и располагается по адресу 0000h:0000h. Каждый 4-байтный элемент таблицы соответствует типу прерывания (от 0 до 0FFH) и содержит сегмент и относительный адрес обработчика прерывания данного уровня. Прерывания от 0 до 1FH (самые нижние уровни) используются как прерывания внутренней аппаратуры; MS-DOS использует прерывания от 20Н до 3FH, все остальные прерывания могут использоваться внешней аппаратурой, системными драйверами и прикладными программами.
Если контроллер прерываний или другое устройство посылает в ЦП прерывание через вывод INTR, оно должно также поместить тип прерывания в виде 8-разрядного числа (от 0 до 0FFH) на системную магистраль для передачи в ЦП. Процессор, умножив это число на 4, определяет адрес используемого вектора прерывания и перейдет на обслуживание прерывания.
Обслуживание состоит в том, что ЦП, обнаружив сигнал прерывания, помещает в машинный стек слово состояния программы (определяющее различные флаги ЦП), регистр программного сегмента (CS) и указатель команд (IP) и блокирует систему прерываний. Затем ЦП с помощью 8-разрядного числа, установленного на системной магистрали прерывающим устройством, извлекает из таблицы векторов адрес обработчика и возобновляет выполнение с этого адреса. По завершении выполнения подпрограммы обработчика прерывания, ЦП восстанавливает из стека содержимое регистров CSи IP, вследствие чего возобновляется выполнение прерванной программы.
- 1 Основные характеристики и области применения эвм различных классов 2
- 2 Архитектурные особенности и организация функционирования вычислительных машин различных классов 37
- Архитектура системы команд. Архитектуры cisc и risc.
- Классификация компьютеров по областям применения
- Иформационно-логические основы вычислительных машин их функциональная и структурная организация
- Процессоры
- Cisc-процессоры ПроцессорыIntel8086
- ПроцессорыPentium
- ПроцессорыPentium4
- Risc-процессоры Особенности процессоров с архитектурой sparc
- Процессоры SuperSparc
- ПроцессорыHyperSparc
- Иерархия памяти, кэш-память
- Виртуальная память
- Физическая организация памяти
- Внешняя память
- Дисковая память
- Память на гибких магнитных дисках
- Память на жестких магнитных дисках
- Кэширование диска
- Основные стадии выполнения команды. Рабочий цикл процессора
- Организация прерываний в эвм
- Каналы и интерфейсы ввода вывода
- Обзор интерфейсов ввода вывода
- Характеристики современных интерфейсов ввода-вывода
- Периферийные устройства
- Печатающие устройства (принтеры)
- Матричные принтеры
- Струнные принтеры
- Лазерные иLed-принтеры
- Принтеры с термопереносом восковой мастики
- Принтеры с термосублимацией красителя
- Принтеры с изменением фазы красителя
- Плоттеры
- Протоколы
- Сканеры
- Видеосистема
- Видеоадаптеры
- Мониторы
- Общие параметры видеосистемы
- Программное обеспечение
- Классификация программного обеспечения (по)
- Операционные системы
- Архитектурные особенности и организация функционирования вычислительных машин различных классов
- Классификация вычислительных систем
- Многомашинные и многопроцессорные вычислительные системы
- Многомашинные вычислительные системы
- Многопроцессорные вычислительные системы
- Типовые вычислительные структуры и программное обеспечение
- Системы с конвейерной обработкой данных
- Матричные вычислительные системы
- Ассоциативные вычислительные системы
- Принципы векторной обработки
- Сети эвм.
- Общие понятия. Классификация.
- Лвс и компоненты лвс
- Локальная вычислительная сеть
- Основные компоненты вычислительной сети
- Рабочая станция
- Сетевое оборудование
- Сетевая операционная система
- Сетевое программное обеспечение
- Глобальная вычислительная сетьInternet
- Интернет – сеть виртуальных сетей
- Каналы связи
- Литература