Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Система прерываний программ в ПК.




 

Важнейшая роль в реализации сложных режимов работы лежит на системе пре­рывания программ.(Слайд 12).

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

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

 

· процедура выбора очередной задачи для определения приоритета задачи;

· процедура сохранения информации о статусе задачи при ее прерывании (формирование словасостояния программы);

· процедура недопущения и устранения конфликтов между задачами (координации и синх­ронизации выполнения задач).

 

Прикладные прерываниявременно устанавливаются пользователем при многопро­граммной работе МП для указания приоритета выполнения прикладных программ (при появлении необходимости выполнения более приоритетной программы те­кущая менее приоритетная программа прерывается).

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

Аппаратные прерыванияинициируются при обращениях к МП со стороны вне­шних устройств (таймера, клавиатуры, дисководов, принтера и т. д.) с требовани­ем выполнения совместно с ними тех или иных процедур. Прерывания от таймера, например, повторяются 18 раз в секунду, от кла­виатуры — при каждом программно не запланированном нажатии некоторых кла­виш и т. п. Аппаратные прерывания не координируются с работой программы и могут быть весьма разнообразны. Для их систематизации и определения очеред­ности выполнения при одновременном возникновении нескольких из них обычно используется контроллер прерываний.

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

 

· прерывания BIOS - базовой системы ввода-вывода;

· прерывания DOS - операционной системы .

 

Программы обработки прерываний DOS, в отличие от программ обработки пре­рываний BIOS, не встроены в ПЗУ и для разных операционных систем могут быть разными. К программным прерываниям можно отнести также прерывания при пошаговом исполнении программы, при работе с контрольным остановом и т. д.

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

Логические прерываниявозникают при появлении ошибок в выполняемых програм­мах (деление на 0, потеря значности мантиссы, нарушение защиты памяти и т. п.).

 


Поделиться:

Дата добавления: 2015-08-05; просмотров: 147; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.005 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты