Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архитектура.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
54.68 Кб
Скачать

14) Набор инструкций. События - прерывания и исключения.

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

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

представляют собой принудительную передачу управления задаче или процедуре. Такая задача или процедура называется обработчиком. Прерывания происходят в

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

15) Эффективный адрес и преобразование адресов.

Три адресных пространства: логическое, линейное и физическое. По сочетанию сегментации и страничной трансляции различают две модели памяти:

1.В сегментной модели памяти приложение использует несколько сегментов памяти (для кода, данных, стека). В этой модели приложение оперирует логическими адресами.

2. В плоской модели памяти приложению для всех целей выделяется единственный сегмент. В этой модели приложение оперирует линейными адресами.

Логический адрес состоит из селектора сегмента Seg и эффективного адреса, называемого также смещением (offset). Логический адрес обозначается в форме Seg:Offset. Селектор сегмента хранится в старших 14 битах сегментного регистра (CS, DS, ES, SS, FS или GS), участвующего в адресации конкретного элемента памяти.Преобразование логического адреса в физический для 32-битных процессоров.

Физический адрес памяти образуется после преобразования линейного адреса блоком страничной трансляции адресов.

Блок страничной трансляции адресов позволяет использовать разрядность физического адреса, отличную от разрядности линейного адреса. В процессорах различных моделей соотношения разрядностей менялись:

1. В 386SX при 32-битном линейном адресе физический был 24-битным (до 16 Мбайт физически адресуемой памяти).

2. В большинстве 32-битных процессоров до 6-го поколения использовался 32-битный физический адрес (до 4 Гбайт физически адресуемой памяти). Формирование адреса памяти процессоров с 64-битным расширением рисунок.