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

Прерывания



Прерывание – сигнал (возможно электрический), который может прерывать выполнение программы, предусмотренное исполнительным модулем, в случае, если флаги и маски команд установлены так, что прерывание разрешено.

Прерывание, как правило, передается обработчику соответствующего типа прерываний.

Обработчик собирает информацию о данном прерывании и определяет дальнейшие действия. Например, если прерывание произошло в случае деления на ноль, – принудительное завершение пользовательской программы с выработкой соответствующего диагностического сообщения.

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

В зависимости от типа прерывания и результатов обработки, возврат управления может осуществляться как в операционную систему, так и в пользовательскую программу.

Как правило, общепринятыми классами прерываний являются следующие:

1. Программные прерывание – вырабатывается при выполнении команд в случаях: неправильная команда, неправильный адрес, превышение разрядной сетки и т.п. для каждой команды ЦП в спецификации системы команд указывается условие или код завершения команды и выработки прерывания.

2. Прерывания службы времени – в каждой вычислительной системе количество служб времени различно (часы, интервальный таймер, компаратор). Что конкретно произошло по прерыванию от службы времени, определяет соответствующий обработчик.

3. Прерывания ввода-вывода – как правило, инициируется контроллером внешнего устройства или аварийной ситуацией на внешнем устройстве.

4. Прерывания от схем контроля – инициируется в случае аппаратных сбоев ЦП, оперативной памяти, КЭШа и т.д. Каждое устройство в вычислительной установке имеет собственные схемы контроля. Схемы контроля строятся различными способами. Самый простой – контроль по модулю два (значения в регистре складываются по модулю два и складываются с контрольным разрядом, в результате должен получиться 0; если не 0, в каком-то бите ошибка). Более сложные схемы включают использование кодов исправления и обнаружения ошибок (код Хемминга обнаруживает двойные ошибки и исправляет единичные; циклические коды). Как правило, прерывания от схем контроля имеют самый высокий приоритет. В ЭВМ от IBM такие прерывания вырабатываются после неоднократного повторения сбойной ситуации.

Передача данных между устройствами ЭВМ.

Передача между устройствами(адресация устройств) может быть реализована двумя различными способами: дешифровкой полей микрокоманд и открытием определенных вентилей для передачи информации тому или иному адресату; выставлением адреса устройства на некоторую адресную магистраль с последующей передачей данных адресату. В первом случае выше быстродействие, но выше и количество электрических соединений. Во втором случае быстродействие ниже, но количество связей меньше.

В ранних моделях компьютеров использовалась одна шина, к которой подключались различные устройства, в настоящее время используется несколько шин. Основные их них ISA(Industry Standard Architecture – для совместимости со старыми устройствами), PCI (Peripheral Connect [Component] Interconnect - для подключения высокоскоростных устройств), IDE(Integrated Drive Electronics), SCSI (Small Computer Systems Interface) и др.





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



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