![]() |
|||
информацию от различных устройств. Для того чтобы устройства могли вовремя Внутренние устройства компьютера и их взаимодействие сообщать процессору о поступлении информации (например, о нажатой пользователем клавише), используется система прерываний. Прерывания Систему прерываний обычно поясняют, используя бытовую метафору. Давайте мысленно заменим процессор, выполняющий программу, на обедающего человека. Процесс обеда может быть прерван. Звонок телефона — это сигнал на прерывание: обед приостанавливается, и обрабатывается информация, поступившая от собеседника. Когда информация обработана (разговор закончен), человек возвращается к обеду. Можно создать список возможных "прерываний" обедающего человека: телефонный звонок, стук в дверь, захныкавший ребенок в соседней комнате и так дат ее. Так и выполняющий программу процессор может при необходимости приостановить текущий процесс, чтобы обработать поступившую информацию (например, о нажатой на клавиатуре клавише или о перемещении мыши). По результатам обработки он может совершить необходимое действие — например, сформировать сигнал для вывода на экран соответствующей буквы или перемещения по экрану указателя мыши. Затем процессор продолжит выполнение приостановленной ранее программы. Чтобы упорядочить обработку прерываний, для каждого из них устанавливается определенный приоритет. В числовом выражении этот приоритет представлен номером прерывания. Чем меньше номер прерывания, тем приоритет выше. Сигналы прерываний поступают от устройств не прямо на процессор, а на специальный контроллер прерываний. Контроллер знает, какой номер прерывания соответствует каждому устройству. При получении запроса на прерывание от устройства он устанавливает сигнал прерывания с соответствующим номером в активное состояние. Всего существует 16 прерываний, что, конечно, очень немного. Правда, в некоторых случаях может быть задействован расширенный контроллер прерываний, и тогда их число увеличится до 24. Однако здесь мы все же рассмотрим общий случай. Итак, существует 16 прерываний, которые нумеруются числами от 0 до 15. Может возникнуть вопрос — почему мы говорим, что этого количества мало? Ведь плат расширения бывает подключено обычно не более трех-четырех? Дело в том, что некоторые прерывания уже закреплены за системными устройствами, так что свободных остается совсем немного. Кроме того, бывают платы расширения, занимающие более одного прерывания (если в плате совмещено несколько различных устройств). Хорошо еще, что современные устройства для шины PCI часто могут работать на одном прерывании вдвоем или даже втроем. Впрочем, можно догадаться, что стабильность и скорость работы системы от этого отнюдь не возрастает. Давайте кратко рассмотрим, какие функции закреплены за прерываниями и какие прерывания можно использовать для плат расширения. |
|||
![]() |
|||
2008 © Computer repair |
|