24. Операционная система персонального компьютера как средство управления ресурсами (на примере изучаемой ОС). Структура и компоненты ОС.
Операционная система – это комплекс программ, обеспечивающий контроль за существованием (некоторые из ресурсов ВС, как мы знаем, являются программными или логическими/виртуальными и создаются под контролем операционной системой), распределением и использованием ресурсов ВС.
Типовая структура ОС
Ядро – резидентная часть ОС, работающая в режиме супервизора. В ядре размещаются программы обработки прерываний и драйверы наиболее «ответственных» устройств. Это могут быть и физические, и виртуальные устройства. Например, в ядре могут располагаться драйверы файловой системы, ОЗУ. Обычно ядро работает в режиме физической адресации.
Следующие уровни структуры – динамически подгружаемые драйверы физических и виртуальных устройств. Это драйверы, добавление которых в систему возможно «на ходу» без перекомпоновки программ ОС. Они могут являться резидентными и нерезидентными, а также могут работать как в режиме супервизора, так и в пользовательском режиме.
Можно выделить следующие основные логические функции ОС:
- управление процессами;
- управление ОП;
- планирование;
- управление устройствами и ФС.
Управление процессами. Жизненный цикл процесса
Рассмотрим типовые этапы обработки процесса в системе, совокупность этих этапов будем назвать жизненным циклом процесса в системе. Традиционно, жизненный цикл процесса содержит этапы:
- образование (порождение) процесса;
- обработка (выполнение) процесса;
- ожидание (по тем или иным причинам) постановки на выполнение;
- завершение процесса.
Планирование
Важной проблемой, на решение которой ориентированы многие компоненты современных ОС, является проблема планирования предоставления тех или иных услуг или функций операционной системой. Традиционно, в состав задач планирования ОС могут входить следующие:
-
- планирование очереди процессов на начало обработки процессором;
- планирование распределения времени ЦП между обрабатываемыми в мультипрограммном режиме процессами;
- планирование порядка обработки заказов на обмен с ВУ;
- планирование порядка обработки прерываний;
- планирование использования ОЗУ (организация свопинга).
В целом, комплексное решение задач планирования в ОС определяет основные эксплуатационные качества каждой конкретной системы. Рассмотрим типовые задачи планирования и модельные решения этих задач.
Планирование очереди процессов на начало обработки ЦП
При планировании очереди процессов на начало обработки ЦП могут применяться как примитивные стратегии организации очереди FIFO, так и стратегии, учитывающие не только порядок поступления в очередь, но и объем ресурсов, продекламированных процессами для использования. В общем случае очередь процессов в БВП может предоставляться как объединение подочередей, где каждая подочередь включает в себя определенные классы процессов (например, такая классификация может строиться на объеме запрашиваемых ресурсов и/или типе процесса). При этом возможно определение приоритета каждой из очередей (сначала рассматриваются непустые очереди с наименьшим приоритетом).
Планирование распределения времени работы ЦП между процессами
Здесь существует несколько проблем:
- величина кванта времени работы ЦП, выделяемого выполняемому процессу.
- стратегия выбора процесса, который будет выполняться ЦП из множества процессов, готовых к исполнению и размещенных в БОП.