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

Процедуры прерываний



Когда вызывается процедура прерывания, содержимое регистров флагов, CS и IP помещено в стек, а флаги IF и TF сброшены. Процедура может разрешить внешние прерывания командой STI, допуская прерывание самой себя запросом на входе INT. Кроме того, она может быть всегда прервана запросом на входе немаскируемых прерываний NMI. Внутренние прерывания, возникающие при выполнении процедуры, будут также прерывать ее. В каждой процедуре необходимо тщательно следить за тем, чтобы в ней не возникло прерывание того типа, которое она обслуживает. Необходимо также задавать объем стека, рассчитанный на максимальную глубину вложения прерываний.

Каждая процедура прерывания должна запоминать в стеке содержимое всех регистров, которые она использует, до их модификации, а перед завершением восстанавливать содержимое этих регистров.

Целесообразно разрешать восприятие прерываний по входу INT для всех частей процедуры, за исключением критических секций, которые нельзя прерывать без риска получения ошибочных результатов. Если прерывания запрещены слишком долго, возникает потенциальная опасность потери запросов прерываний по входу INT.

Процедура прерывания должна заканчиваться командой возврата из прерывания IRET. Перед ее выполнением предполагается, что стек находится в том состоянии, в каком он был сразу после вызова процедуры. Команда IRET извлекает три верхних слова из стека в регистры IP, CS и флагов.

Фактические действия процедуры зависят от ее назначения. Если процедура обслуживает периферийное устройство, она должна передать ему приказ о снятии запроса прерывания. Затем она может получить от устройства информацию о его состоянии, определить причину прерывания и предпринять соответствующие действия. Если пре­рывание пришло от клавиатуры в связи с тем, что была нажата клавиша, то операционная система, считав из порта клавиатуры код этой клавиши, запоминает его в памяти.

Программные прерывания можно использовать для вызова обслуживающих программ операционной системы (вызов супервизора).

ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ

2. Перечислите категории регистров процессора х86

3. Напишите формулу для определения времени доступа к памяти при считывании.

4. Напишите формулу для определения времени доступа к памяти при записи.

5. Напишите формулу для определения объема кэшируемой памяти при архитектуре прямого отображения.

6. Перечислите основные логические области оперативной памяти.

7. Какой тип ОЗУ предпочтительнее с точки зрения разработчика электронной аппаратуры? Почему?

8.Перечислите основные методы защиты памяти или информации.

9.Нарисуйте структуру ЭВМ с одним общим интерфейсом.

10.Нарисуйте структуру ЭВМ с каналами ввода-вывода.

11.Приведите примеры устройств, использующих последовательную передачу данных.

12.Приведите примеры устройств, использующих параллельную передачу данных.

13.В чем состоят достоинства и недостатки последовательного интерфейса по сравнению с параллельным?

14.Нарисуйте схему организации системы прерываний процессора х86 и перечислите возможные источники прерываний.

ТРЕНИНГ УМЕНИЙ





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



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