Управление процессором.
Управление работой процессора, в подавляющем большинстве операционных систем, осуществляется при помощи механизма прерываний. Прерывания представляют собой механизм, позволяющий координировать параллельное функционирование отдельных устройств вычислительной системы и реагировать на особые состояния, возникающие при работе процессора. Таким образом, прерывание это принудительная передача управления от выполняемой программы к системе (а через нее — к соответствующей программе обработки прерывания), происходящая при возникновении определенного события. Идея прерываний была предложена в середине 50-х годов и можно без преувеличения сказать, что она внесла наиболее весомый вклад в развитие вычислительной техники. Основная цель введения прерываний — реализация асинхронного режима работы и распараллеливание работы отдельных устройств вычислительного комплекса. Механизм прерываний реализуется аппаратно-программными средствами. Структуры систем прерывания (в зависимости от аппаратной архитектуры) могут быть самыми разными, но все они имеют одну общую особенность — прерывание непременно влечет за собой изменение порядка выполнения команд процессором. Механизм обработки прерываний независимо от архитектуры вычислительной системы включает следующие элементы: 1.Установление факта прерывания (прием сигнала на прерывание) и идентификация прерывания (в операционных системах иногда осуществляется повторно, на шаге 4). 2.Запоминание состояния прерванного процесса. Состояние процесса определяется прежде всего значением счетчика команд (адресом следующей команды, который, например, в i80x86 определяется регистрами CS и IP — указателем команды, содержимым регистров процессора и может включать также спецификацию режима (например, режим пользовательский или привилегированный) и другую информацию. 3.Управление аппаратно передастся программе обработки прерывания. В простейшем случае в счетчик команд заносится начальный адрес подпрограммы обработки прерываний, а в соответствующие регистры — информация из слова состояния. В более развитых процессорах, например в том же i80286 и последующих 32-битовых микропроцессорах, начиная с i80386, осуществляется достаточно сложная процедура определения начального адреса соответствующей подпрограммы обработки прерывания и не менее сложная процедура инициализации рабочих регистров процессора. 4.Сохранение информации о прерванной программе, которую не удалось спасти на шаге 2 с помощью действий аппаратуры. В некоторых вычислительных системах предусматривается запоминание довольно большого объема информации о состоянии прерванного процесса. 5.Обработка прерывания. Эта работа может быть выполнена той же подпрограммой, которой было передано управление на шаге 3, по в ОС чаще всего она реализуется путем последующего вызова соответствующей подпрограммы. 6.Восстановление информации, относящейся к прерванному процессу (этап, обратный шагу 4). 7.Возврат в прерванную программу. Контрольные задания для СРС (темы 1, 2) [(1;39-52), (3;59-60, 63-65)] 1. Сетевые операционные системы 2. Модель клиент – сервер 3. Многоуровневые системы
Рекомендуемая литература 1.Олифер В.Г.,Олифер Н.А. Сетевые ОС 2.Гордеев А.В, Молчанов А.Ю. Системное программное обеспечение. 3.Таненбаум Э, Вудхал А Операционные системы: разработка и реализация.
©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|