Система прерываний и приостановок, состояние процессора. — КиберПедия 

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Система прерываний и приостановок, состояние процессора.

2021-06-24 29
Система прерываний и приостановок, состояние процессора. 0.00 из 5.00 0 оценок
Заказать работу

Во время выполнения какой-либо программы компьютером могут возникнуть события, требующие переключения компьютера на другую про­грамму. К ним относятся необходимость незамедлительного решения другой задачи, пере­полнение разрядной сетки, программный или аппаратный сбой, окончание предусмотренного интервала времени и др.

Запросы на прерывания могут возникать внутри самой ЭВМ и в ее внешней среде.

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

Запросы из внешней среды – это запросы от других ЭВМ, от аварийных и некоторых других датчиков технологического процесса и т.п.

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

Переход к другой программе осуществляется посредством системы прерываний.

 

Прерывание программы — это процесс переключения процессо­ра с одной программы на другую по внешнему сигналу с сохране­нием информации для последующего возобновления прерванной программы.

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

Запрос на прерывание запускает программу обслуживания прерывания [ввод данных с клавиатуры, отсутствие места на диске, вывод данных на принтер, проверка Internet-модема и др.]

Состояние машины постоянно фиксируется. Для восстановления работы ЭВМ после прерывания в специальном регистре процессора по­стоянно находится слово состояния программы, которое и характе­ризует его состояние. Это слово содержит информацию, необхо­димую для возобновления программы при прерываниях: указания о разрешенных прерываниях, адрес текущей выполняемой коман­ды, различные признаки, ключи защиты и маски[части кода].

Виды систем прерывания:

1. С помощью ре­гистра запросов прерываний.  Запросы прерываний направляются на различные разряды специального регистра - ре­гистра запросов прерываний (РЗП). Его опрос производится в при завершении очеред­ной команды. В разрядах РЗП записаны приоритеты запросов прерывания, номер разряда определяет приоритет запроса и позволяет найти программу обслуживания прерыва­ния, соответ­ствующую данному запросу. Поступивший запрос может прервать только менее приори­тетную программу.

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

3. Приостановка – это остановка работы процессора на цикл занятия памяти. Когда память нужна для процессов приема или выдачи информации, то работа процессора временно останавливается, т.к. память занята. Состояние процессора не меняется, но выполнение очередной команды задерживается до освобождения памяти.

Характеристики системы прерываний:

· общее число входов от источников (число зап­росов прерываний);

· число уровней прерывания, по которым сгруппированы источники с одной и той же программой прерывания;

· глубина прерывания - это максимальное чис­лом программ, которые могут быть последовательно прерваны друг другом;

· система приоритетов и организация переходов к следу­ющей программе.

Процесс прерывания состоит из следующих интервалов времени:

1. Время реакции τож - время ожидания, прошедшее между запросом прерывания и началом переключения на программу обслуживания. Зависит от характеристик системы прерывания и от числа ожидающих обслуживания программ со старшими приоритетами. Время реакции определяют для запроса с наибольшим приоритетом, который будет обрабаты­ваться первым. Обычно наивысший приоритет назначают запро­сам прерываний, поступающим от аппаратуры контроля, чтобы обнаруженная ошибка не оказала влияния на последующую рабо­ту компьютера.

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

2. Время запоминания параметров текущей команды τ3 (для освобождения ресурсов процессора)

3. Время выполнения прерывающей программы τп.п и

4. Время восстановления параметров текущей программы τв.

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

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

Время на запоминание параметров текущей програм­мы τ3 и время на восстановление состояния процессора τв определяют длительность переключения программ при пре­рывании. Эта длительность обычно составляет несколько машин­ных тактов.

Глубина прерываний — максимальное число программ, спо­собных прерывать друг друга. Более приоритет­ные запросы обслуживаются в первую очередь. Так, если текущая программа прервана программой ввода-вывода от клавиатуры, а в процессе ее выполнения поступил запрос от накопителя на дис­ках, то она также будет прервана. После этого завершится про­грамма ввода-вывода от накопителя, затем программа ввода-вы­вода от клавиатуры, и только после этого – основная программа.

Если запрос на прерывание от какого-либо источника не будет обслужен до прихода очередного запроса от того же источника, то он теряется; возникает насыщение системы прерываний.

Приоритет прерываний. Число различных источников прерывания может достигать несколь­ких сотен- схемы контроля ЦП, системы питания, памяти, внешние события и т.п.

Все источники подраз­деляют на отдельные уровни, каждый уровень обрабатывается одной программой обработки прерываний. Запросы (сигналы) поступают на определенные разряды ре­гистра РЗП, устанавливая их в «1».

Поскольку сигналы от источников прерываний могут поступить одновремен­но, то порядок их обслуживания устанавливается путем назна­чения приоритетов. Запросы прерываний в зависимости от назна­ченного приоритета направляются на различные разряды регист­ра прерываний процессора, опрос которого производится в стро­го определенной последовательности. Так, запрос самого высоко­го уровня поступает на первый «опрашиваемый» разряд этого ре­гистра и, следовательно, всегда обрабатывается первым. Самым высоким приоритетом обладают прерывания от схем контроля. Поступивший запрос прерывания может прервать только менее приоритетную программу.

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

После обнаружения сигнала прерывания при выполне­нии каждой команды процессора производится проверка — раз­решено ли оно. Если да, то начинается его обслуживание.

Состояние процессора

Понятие состояния процессора (состояния программы) занимает важное место в организации вычислительного процесса в ЭВМ.

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

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

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

Совокупность значений этих информационных элементов получила название векторасостоянияилислова состояния процессора (программы).

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


Поделиться с друзьями:

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

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

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.016 с.