- •Часть2.
- •Путеводитель по части 2
- •Глава3. Описание процессов и управление ими
- •Глава 4. Потоки, симметричная мультипроцессорная обработка и микроядра
- •Глава 5. Параллельные вычисления: взаимоисключения и многозадачность
- •Глава 6. Взаимоблокировка и голодание
- •Глава3.
- •3.1. Состояния процессов
- •Биты режима работы
- •Коды условий
- •3.3. Управление процессами
- •3.4. Управление процессами
- •Зависят от используемого аппаратного обеспечения
- •3.5. Резюме, ключевые и контрольные вопросы
- •3.6. Рекомендуемая литература
- •3.7. Задачи
3.5. Резюме, ключевые и контрольные вопросы
Фундаментальным строительным блоком современных операционных систем является процесс. Основная функция операционной системы состоит в создании, управлении и завершении процессов. Операционная система должна следить за тем, чтобы каждому активному процессу выделялось время для выполнения на процессоре, координировать деятельность процессов, разрешать конфликтные ситуации и выделять процессам системные ресурсы.
Чтобы операционная система имела возможность управлять процессами, она поддерживает описание каждого процесса или образ процесса. В образ процесса входит адресное пространство, в котором этот процесс выполняется, и управляющий блок процесса. В управляющем блоке содержится вся информация, которая требуется операционной системе для управления процессом, включая его текущее состояние, выделенные ресурсы, приоритет и другие необходимые данные.
Во время своего существования процесс может переходить из одного состояния в другое. Наиболее важными из всех состояний являются состояние готовности, состояние выполняющегося процесса и блокированное состояние. Готовый к выполнению процесс — это процесс, который не выполняется в данный момент, но его выполнение может начаться сразу же, как только операционная система передаст ему управление. Выполняющийся процесс — это процесс, который в настоящее время выполняется процессором. В многопроцессорной системе в этом состоянии может находиться сразу несколько процессов. Блокированный процесс •— это такой, который ожидает наступления какого-то события, например завершения операции ввода-вывода.
Выполнение процессов время от времени прерывается. Прерывание наступает либо вследствие какого-то внешнего по отношению к процессу события, которое распознается процессором, либо вследствие вызова управляющей программы операционной системы. В любом из этих случаев происходит переключение процессора в другой режим работы и передача управления подпрограмме операционной системы. После выполнения своих функций операционная система может продолжить выполнение прерванного процесса или переключиться на выполнение другого процесса.
Ключевые термины
Вытеснение Прерывание Слово состояния программы
Дочерний процесс Привилегированный Состояние блокирования
Завершение процесса режим Состояние выполнения
Задание Процесс Состояние готовности
Ловушка Режим ядра Состояние нового процесса
Образ процесса Родительский процесс Состояние
Переключение процессов Свопинг приостановленности
Переключение режимов Системный режим Управляющий блок
Пользовательский режим След процесса
Контрольные вопросы
Что такое след процесса?
В результате каких событий создаются процессы?
Дайте краткое описание каждого состояния, фигурирующего в модели обработки процессов, представленной на рис. 3.3.
Что такое вытеснение процесса ?
Что такое свопинг и когда он применяется?
Зачем на рис. 3.6,6 представлены два блокированных состояния?
Перечислите четыре характерных признака приостановленных процессов.
Для каких объектов операционная система поддерживает таблицы с управляющей информацией?
Перечислите три общие категории информации в управляющем блоке процесса.
Зачем нужны два режима работы процессора (пользовательский режим и режим ядра)?
Какие действия выполняет операционная система при создании нового процесса?
Чем отличаются обычное прерывание и ловушка?
Приведите три примера прерываний.
Чем отличаются переключение режима работы процессора и переключение процессов?