Шинная организация микропроцессорных систем- с одной шиной, с дв. Программа для эвм это упорядоченная последовательность команд, подлежащая обработке
Скачать 1.97 Mb.
|
43.Специальные прерывания (особые случаи, исключения) в микропроцессорах.Помимо обработки системного вызова в системном режиме осуществляется обработка запросов прерывания от периферийных устройств. Прерывания(interruption) – это штатные ситуации, возникающие при поступлении соответствующих команд (программные прерывания) или внешних запросов (аппаратные прерывания). Кроме того, с помощью ОС удобно осуществлять обработку отказов аппаратуры и обработку ошибок программного обеспечения, т.е. нештатных ситуаций (ошибок), возникающих при работе процессора. Такие нештатные ситуации называют исключениями(exeption), а их обработку с помощью ОС путем автоматического перехода в системный режим в ходе выполнения прикладной программы в пользовательском режиме – обработкой специальногопрерыванияили прерыванияпривозникновениинепредусмотренной(исключительной)ситуации. Действия при переходе к такой обработке общие для всех случаев и аналогичны действиям, выполняемым при переходе к обработке прерываний. Исключения делятся на ошибки (faults), ловушки (traps) и отказы (aborts). Ошибкивыявляются и обслуживаются до выполнения команды, которая является причиной их возникновения. Примером ошибки может служить ситуация, возникающая при обращении очередной команды к сегменту, отсутствующим в основной памяти. В этом случае в качестве адреса возврата к прерванной программе сохраняется адрес команды, выполнение которой вызвало данное исключение. Ловушка– это исключение, которое выявляется после выполнения команды. Примером ловушки может служить команда INTO в МП Intel 80x86, которая реализует исключение с номером n=4 в случае, если в регистре флагов значение признака переполнения OF=1. При обслуживании ловушки в качестве адреса возврата сохраняется адрес команды, следующей за командой, вызвавшей данное исключение. Ошибки и ловушки предусматривают продолжение нормального выполнения программы после завершения их обслуживания. Отказысообщают о возникновении серьезных нарушений в работе системы. Примером таких нарушений может быть неисправность аппаратуры или возникновение исключения при обслуживании ранее поступившего запроса. Отказ не предусматривает продолжение выполнения прерванной программы, поэтому при его возникновении обычно производится повторный запуск процессора. |