1.2.1 Программирование контроллера прерываний 8259.

Error message

Notice: Undefined index: add term path in hansel_get_breadcrumbs() (line 524 of /data/sites/msdosworld.ru/www/sites/all/modules/hansel/hansel.module).

  Для  управления аппаратными прерываниями во всех типах IBM  PC
используется микросхема  программируемого  контроллера прерываний
Intel 8259. Поскольку в ккаждый момент времени может поступить не
один запрос, микросхема имеет схему  приоритетов. Имеется 8 уров-
ней приоритетов, кроме AT, у которого их 16, и обращения к  соот-
ветствующим уровням обозначаются сокращениями от IRQ0 до IRQ7 (от
IRQ0 до IRQ15), что означает запрос на прерывание.   Максимальный
приоритет соответствует уровню  0.   Добавочные  8 уровней для AT
обрабатываются второй микросхемой 8259; этот второй набор уровней
имеет приоритет между IRQ2  и  IRQ3.  Запросы  на  прерывание 0-7
соответствуют векторам прерываний от 8H до 0FH; для AT запросы на
прерывания 8-15 обслуживаются векторами  от 70H до 77H. Ниже при-
ведены назначения этих прерываний:

   Аппаратные прерывания в порядке приоритета.

   IRQ 0     таймер
       1     клавиатура
       2     канал ввода/вывода
          8  часы реального времени (только AT)
          9  программно переводятся в IRQ2 (только AT)
         10  резерв
         11  резерв
         12  резерв
         13  мат. сопроцессор (только AT)
         14  контроллер фиксированного диска (только AT)
         15  резерв
       3     COM1 (COM2 для AT)
       4     COM2 (модем для PCjr, COM1 для AT)
       5     фиксированный диск (LPT2 для AT)
       6     контроллер дискет
       7     LPT1

   Прерыванию  времени суток [2.1.0] дан максимальный  приоритет,
поскольку если оно будет  постоянно  теряться, то будут неверными
показания системных часов. Прерывание от клавиатуры [3.1.0] вызы-
вается при  нажатии  или  отпускании  клавиши;  оно вызывает цепь
событий,  которая обычно заканчивается тем, что код клавиши поме-
щается в буфер  клавиатуры  (откуда  он  затем может быть получен
программными прерываниями).
   Микросхема 8259 имеет три однобайтных регистра, которые управ-
ляют восемью линиями аппаратных  прерываний.   Регистр запроса на
прерывание  (IRR)  устанавливает соответствующий бит, когда линия
прерывания сигнализирует о запросе. Затем микросхема автоматичес-
ки проверяет не обрабатывается ли другое прерывание. При этом она
запрашивает информацию регистра обслуживания  (ISR). Дополнитель-
ная  цепь отвечает за схему приоритетов.  Наконец, перед  вызовом
прерывания,  проверяется  регистр  маски  прерываний (IMR), чтобы
узнать  разрешено ли в данный момент прерывание  данного  уровня.
Как правило программисты  обращаются только к регистру маски пре-
рываний  через порт 21H [1.2.2] и командному регистру  прерываний
через порт 20H [1.2.3].


 

Вы находитесь в разделе: 

Добавить коментарий