Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Unit 3.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
117.34 Кб
Скачать

3.2 Device Management and Configuration

Управление устройствами и настройка

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

3.2.1 Interrupt Handling

  • Interrupts

  • Interrupt Priority and Nested Interrupts

  • Traps and Faults

Interrupts

Прерывания

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

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

Ядро обрабатывает прерывания в значительной степени то же самое. Вот шаги, участвующие в борьбе с клавиатуры прерывания , которое происходит каждый раз при нажатии на клавишу. Перед тем, как нажать кнопку , процессор занят выполнением какую-то программу или другое. Предположим, вы используете компьютер для редактирования веб-страницы , а процессор занят , выясняя, как для отображения какой-либо файл изображения, который вы только что загруженной . В то время как он делает это, вы достигнете ждем введите буквы "HTTP" на клавиатуре. Как только вы нажмете клавишу "H" , клавиатура передает байт данных в интерфейс клавиатуры PS / 2 на материнской плате. Интерфейс то нужно прерывать процессор и передавать этот байт данных для драйвера клавиатуры . Он должен сделать это очень быстро - , прежде чем ударить"T" ключ - в противном случае существует опасность того, что следующее нажатие клавиши будут потеряны.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]