Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОСНОВЫ ОПЕРАЦИОННЫХ СИСТЕМ.doc
Скачиваний:
80
Добавлен:
09.11.2019
Размер:
4.83 Mб
Скачать

2.3. Функциональные компоненты ос

Функции ОС автономного компьютера обычно группируются либо в соответствии с видами локальных ресурсов, которыми управляет ОС, либо в соответствии со специфическими задачами, применимыми ко всем ресурсам. Обычно такие группы функций поддерживаются отдельными подсистемами ОС (рис.2.3) [1-3].

2.3.1. Подсистема управления процессами

Для каждого порождаемого процесса ОС генерирует системные информационные структуры, содержащие данные о потребностях процесса в ресурсах ВС, а также о фактически выделенных ему ресурсах. Таким образом, процесс представляет заявку на потребление системных ресурсов.

Чтобы процесс был выполнен, ОС должна назначить ему область ОП, где будут размещены коды и данные процесса, а также предоставить ему необходимое количество процессорного времени. Кроме того, процессу может понадобиться доступ к другим ресурсам, например, к файлам или УВВ.

Рис.2.3. Подсистемы ОС

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

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

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

ОС также выполняет функции синхронизации процессов, приостанавливая выполнение одного из них до наступления какого-либо события в системе, например, завершения операции ввода-вывода, выполняемой ОС по его запросу.

Нет однозначного соответствия между процессами и программами. Один программный файл может породить несколько параллельных процессов, процесс может в ходе своего выполнения сменить программный файл и начать выполнять другую программу.

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

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