- •Вопрос 1. Поколения архитектуры эвм. Основные характеристики.
- •Вопрос 2. Области применения и типы эвм. Классификация по быстродействию и областям применения
- •Вопрос 3. Принципы архитектуры Фон-Неймана.
- •Вопрос 4. Пользовательские регистры. Регистры общего назначения.
- •Вопрос 5. Пользовательские регистры. Сегментные регистры.
- •Вопрос 6. Основные характеристики памяти. Адресная, ассоциативная и стековая организация памяти.
- •Вопрос 7. Ассоциативная организация памяти: регистровая косвенная адресация (базовая и индексная)
- •Вопрос 8. Ассоциативная организация: регистровая косвенная адресация со смещением
- •Вопрос 9. Стековая память
- •Вопрос 10. Динамическая память. Статическая память
- •Вопрос 11. Режимы работы кэш-памяти
- •Вопрос 12. Структура эвм. Назначение и структура процессора
- •Вопрос 13. Системы команд. Классификация процессоров в соответствии с системой команд
- •Вопрос 14. Реальный режим процессора типа интел 8086. Сегмент, граница параграфа, смещение
- •Вопрос 15. Защищенный режим работы процессора. Таблицы дескрипторов
- •Вопрос 16. Виртуальный режим работы процессора типа интел 8086
- •Вопрос 17. Прерывания
- •Вопрос 18. Системы ввода-вывода.
- •Вопрос 19. Классификация процессоров. Cisc, risc, vliw, суперскалярные процессоры, misc.
- •Вопрос 20. Особенности risc архитектуры.
- •Вопрос 21. Параллельная обработка. Конвейерная организация. Типы конфликтов.
- •Вопрос 22. Архитектура суперскалярных процессоров. Предварительная выборка команд и предсказание переходов.
- •Вопрос 23. Архитектура эвм с длинным командным словом.
- •Вопрос 24. Процессор ia-64. Особенности построения и работы архитектура ia-64 (Merced)
- •Вопрос 25-26. Основные классы современных параллельных компьютеров. Numa, pvp, кластеры. Основные классы современных параллельных компьютеров. Mpp, smp
- •Массивно-параллельные системы (mpp)
- •Симметричные мультипроцессорные системы (smp)
- •Системы с неоднородным доступом к памяти (numa)
- •Параллельные векторные системы (pvp)
- •Кластерные системы
- •Вопрос 27. Вычислительные системы, классы архитектур.
Вопрос 17. Прерывания
Идея прерывания была предложена в середине 50-х годов и основная цель введения прерываний – реализация синхронного режима работы и реализация параллельной работы отдельных устройств ЭВМ.
Прерывание (interrupt) – это сигнал, заставляющий ЭВМ менять обычный порядок выполнения команд процессором. Возникновение подобных сигналов обусловлено такими событиями, как:
завершение операций ввода-вывода.
истечение заранее заданного интервала времени.
попытка деления на нуль.
сбой в работе аппаратного устройства и др.
С каждым прерыванием связывают число, называемое номером типа прерывания или просто номером прерывания. Система умеет распознавать, какое прерывание, с каким номером оно произошло, и запускает соответствующую этому номеру программу обработки прерывания. Таким образом, при поступлении сигнала на прерывание происходит принудительная передача управления от выполняемой программы к системе, а через нее - к обработчику прерываний.
Например прерывание с номером 9 - прерывание от клавиатуры, которое генерируется при нажатии и при отжатии клавиши. Используется для чтения данных с клавиатуры. Обозначается в ОС как IRQ1, где IRQ – обозначение прерывания, а 1 – приоритет прерывания.
Обработчик прерываний – программа обработки прерывания, являющаяся частью ОС, предназначенная для выполнения ответных действий на условие, вызвавшее прерывание.
Предположим, что в момент поступления сигнала прерывания от некоторого источника программа А находится в решении. В результате управление автоматически передается обработчику прерываний. После завершения обработки управление может быть снова передано в ту точку программы А, где ее выполнение было прервано.
Векторы прерываний
Адреса программ, соответствующих различным прерываниям, собраны в таблицу, которая называется таблицей векторов прерываний. Для микропроцессора требуется простой способ определения местоположения программы обработки прерывания и это осуществляется путем использования таблицы векторов прерываний.
Таблица векторов прерываний занимает первый килобайт оперативной памяти - адреса от 0000:0000 до 0000:03FF. Таблица состоит из 256 элементов - FAR-адресов обработчиков прерываний. Эти элементы называются векторами прерываний. В первом слове элемента таблицы записано смещение, а во втором - адрес сегмента обработчика прерывания. Векторами являются просто полные адреса памяти программы (в сегментированной форме), которая должна быть активизирована в случае возникновения прерывания.
Прерыванию с номером 0 соответствует адрес 0000:0000, прерыванию с номером 1 - 0000:0004 и т.д. Адрес такой состоит из пары 2-байтовых слов, поэтому каждый из векторов занимает четыре байта.
Механизм обработки прерываний
При обработке каждого прерывания должна выполняться следующая последовательность действий:
- Восприятие запроса на прерывание: прием сигнала и идентификация прерывания.
- Запоминание состояния прерванного процесса: определяется значением счетчика команд (адресом следующей команды) и содержимым регистров процессора.
- Передача управления прерывающей программе (в счетчик команд заносится начальный адрес подпрограммы обработки прерываний, а в соответствующие регистры – информация из слова состояния процессора).
- Обработка прерывания.
- Восстановление прерванного процесса и возврат в прерванную программу.
Типы прерываний:
Аппаратные прерывания вызываются физическими устройствами и возникают по отношению к программе асинхронно, т.е. в общем случае невозможно предсказать, когда и по какой причине программа будет прервана.
Программы могут сами вызывать прерывания с заданным номером. Для этого они используют команду INT. По этой команде процессор осуществляет практически те же действия, что и при обычных прерываниях, но только это происходит в предсказуемой точке программы – там, где программист поместил данную команду. Поэтому программные прерывания не являются асинхронными (программа «знает», когда она вызывает прерывание).
Программные прерывания в прямом смысле прерываниями не являются, поскольку представляют собой лишь специфический способ вызова процедур - не по адресу, а по номеру в таблице.