Работа на компьютере. Новейший самоучитель - [12]

Шрифт
Интервал

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

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

Всего существует 16 прерываний, которые нумеруются числами от 0 до 15. Этого, как выясняется, очень мало.


ПРИМЕЧАНИЕ.

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


Почему же прерываний недостаточно, если плат расширения обычно подключено не более трех-четырех?

Дело в том, что некоторые прерывания уже закреплены за системными устройствами, поэтому свободных остается совсем немного. Кроме того, существуют устройства, которые норовят занять более одного прерывания (если в плате совмещены несколько различных устройств). Хорошо еще, что современные устройства для шины PCI, как правило, «знают» о проблемах с недостатком прерываний, и часто вполне могут уживаться на одном прерывании вдвоем или даже втроем. Впрочем, несложно догадаться, что стабильность и скорость работы системы от этого снижается.

Рассмотрим кратко, каким образом используются прерывания и какие из них можно выделить для плат расширения.

♦ Прерывание 0 – наиболее приоритетное, жестко закреплено за системным таймером. Оно не может быть использовано каким-либо другим устройством.

♦ Прерывание 1 – жестко закреплено за контроллером клавиатуры. Таким образом, сигналы от клавиатуры по умолчанию являются наиболее приоритетными пользовательскими сигналами. Первое прерывание не может быть назначено какому-либо другому устройству.

♦ Прерывание 2 – имеет техническое значение. С его помощью изначальное количество прерываний путем некоторых системных манипуляций в свое время было увеличено с 8 до 16. Таким образом, это прерывание также не может быть использовано каким-либо устройством.

♦ Прерывание 3 – обычно используется вторым последовательным портом компьютера. Если это так, то оно не может быть назначено другим устройствам. Однако если данный порт не нужен, то его можно отключить, и тем самым прерывание 3 освободится для использования другими устройствами.

♦ Прерывание 4 – аналогично использованию прерывания № 3 только для первого последовательного порта.

♦ Прерывание 5 – изначально является свободным и может назначаться различным устройствам по усмотрению пользователя (или операционной системы, если в ней предусмотрена автоматическая настройка).


ВНИМАНИЕ!

Если необходимо использовать звук в играх (особенно старых) или же в системе установлена звуковая карта, совместимая с Sound Blaster Pro и подключаемая к шине ISA, то пятое прерывание должно быть закреплено за звуковой картой.


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

♦ Прерывание 7 – обычно используется параллельным портом компьютера. Однако если данный порт не нужен, то его можно отключить, а прерывание 7 назначить другим устройствам.

♦ Прерывание 8 – жестко закреплено за часами реального времени и не может быть использовано другими устройствами.

♦ Прерывание 9 – изначально является свободным и может использоваться платами расширения по усмотрению пользователя или операционной системы. Однако довольно часто данное прерывание использует система расширенного управления питанием или контроллер USB-порта, так что претендентов на него вполне достаточно.

♦ Прерывание 10 – является изначально свободным и может использоваться платами расширения по усмотрению пользователя или операционной системы.

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

♦ Прерывание 12 – жестко закреплено за мышью, подключаемой к порту PS/2. Поскольку большинство современных компьютеров оснащены именно такой мышью, прерывание 12 оказывается занятым. Если PS/2-мышь в системе отсутствует, то прерывание можно освободить и назначить другим устройствам.

♦ Прерывание 13 – жестко закреплено за встроенным или внешним математическим сопроцессором. Даже если такой отсутствует (например, используется система на базе процессора 80 386SX при отсутствующем сопроцессоре 80 387), прерывание 13 остается занятым, и другие устройства не могут его использовать.