МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


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


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


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

Определение момента прерывания и приоритета запроса





 

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

Метод помеченного оператора (опорных точек). Суть метода состоит в следующем. В специальные разряды команд, после которых допускается прерывание, записывается определенный знак, разрешающий (например, состояние 1 специального бита команды) или запрещающий (например, состояние 0) прерывание. Команды, после выполнения которых разрешается прерывание, называются опорными точками. Опорные точки вдоль программы расставляются таким образом, чтобы информация, находящаяся в регистрах процессора после выполнения команды опорной точки, дальше не использовалась. Поскольку отсутствует необходимость хранения дополнительной информации, в момент прерывания достаточно сохранить лишь ССП текущей программы (tобс → min). В то же время обработка вновь пришедшего запроса прерывания будет отложена до ближайшей опорной точки прерываемой программы. Поэтому метод опорных точек уменьшает время обслуживания, но увеличивает время реакции.

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

Метод быстрого реагирования. Прерывание допускается во время выполнения любой команды, т. е. после выполнения очередного ее такта. Здесь tр ® min, а tобс ® max, т.к. необходимо запоминать и затем восстанавливать некоторые обычно программно-недоступные элементы (например, счетчик тактов и т. п.).

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

Следующей задачей системы прерываний является определение наиболее приоритетного незамаскированного запроса на прерывание. (Шаг 2).

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

В случае простейшей аппаратной реализации приоритета между запросами прерывания может быть использована цепочечная однотактная схема (рис. 2.9) («дейзи-цепочка»).

 

Рис. 2.9.Схема определения номера наиболее приоритетного запроса

Данная схема используется для анализа запросов аппаратных и логических прерываний. Приоритет запросов прерываний (ЗПi) уменьшается с уменьшением номера запроса. В тот момент, когда ЭВМ должна определить наличие и приоритет прерывания, процессор выдает сигнал опроса. Если на входе ЗП3 присутствует сигнал высокого уровня (есть запрос), то на элементе 11 (логические «ИЛИ») формируется общий сигнал наличия запроса прерывания, и дальнейшее прохождение сигнала опроса блокируется. Если ЗП3=0, то анализируется сигналЗП2 и так далее. На шифраторе (элемент 12) формируется номер поступившего запроса прерывания, который передается в процессор лишь при наличии общего сигнала запроса прерывания.

Такая структура позволяет быстро анализировать наличие сигнала запроса прерывания и определять наиболее приоритетный запрос из нескольких присутствующих в данный момент. Распределение приоритетов запросов прерываний внешних устройств осуществляется путем их физической коммутации по отношению к процессору. Указание приоритетов - жесткое и не может быть программно изменено. Изменение приоритетов возможно только путем физической перекоммутации устройств.

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

Приведем пример. Пусть одновременно возникли три запроса (рис. 2.9) - ЗП1, ЗП2, ЗП3, обработчиками данных запросов являются программы №1, №2, №3 соответственно. По приоритету предпочтение отдается запросу с большим номером. Предположим, что приоритет между прерывающими программами установлен в обратном порядке. Тогда в соответствии с приоритетами между запросами вначале процессор приступает к выполнению программы №3, но, как только поиск запросов прерывания возобновится, запрос ЗП2 прервет выполнение программы №3 и запустит программу №2. Аналогично последняя прервется программой №1, которая и выполнится первой.

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

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

 





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.