Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SPPO_chast3.doc
Скачиваний:
5
Добавлен:
16.04.2015
Размер:
290.3 Кб
Скачать

Студенческий конспект по СППО Часть III.

Часть 3

Элементы функционирования операционных систем

  1. Характеристика методов распределения ресурсов

Операционная система = управляющие программы + сервисные программы (прикладное программное обеспечение)

Концепция расширенной машины:

Сервисные программы

Управляющие программы

аппаратура

Уровни управляющей программы (с точки зрения ОС):

  1. Нижний уровень – уровень синхронизации процессов и распределения времени центрального процессора

  2. Уровень управления операционной памятью

  3. Верхний уровень (управление процессами) – процессы создаются и уничтожаются (нижний уровень управления информацией)

Процесс состоит из: программа (код и данные)+управляющая информация(PCB)

  1. Управление устройствами ввода вывода

  2. Управление информацией (верхний уровень)

Каждый верхний уровень использует средства нижнего уровня.

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

Методы распределения ресурсов:

1)Статический

2)Динамический

Статическое выделение ресурсов – выделение ресурса (монопольное) на этапе создания процесса и этот ресурс принадлежит процессу в момент его завершения (понижает эффективность использования ресурса).

Динамическое выделение ресурса – распределение ресурса по запросу, но в момент выполнения процесса (повышает эффективность работы ОС, но алгоритм более сложен – менее надёжен)

Проблема тупиков:

Процесс А

Ресурс 1

Процесс Б

Ресурс 2

Решение – убить один из процессов.

Независимо от того, какой ресурс выделяется принцип управления одинаков

Управления ресурсами:

  1. Отслеживание состояния ресурса с помощью управляющей таблицы

  2. Поддержка алгоритмизации управления ресурсами (как предоставить ресурс, в каком объёме)

  3. Физическое выделение ресурса

  4. Освобождение ресурса

  1. Синхронизация процессов при выделении ресурсов

PCBa

Процесс A

РЕСУРС

PCBb

Таблица ресурса

симофор

Процесс B

1 /0

Диспетчер ресурса (выделение ресурса)

PCBc

Процесс C

Динамическая область

Симофоры – используются для синхронизации ресурсов

1)Симофор двоичный – это специальное управляющее поле содержащее

информацию о том свободен ресурс или занят(0 – свободен, 1 - занят).

Если ресурс занят то симофор не равен нулю, следовательно, диспетчер блокирует ресурс на процессе B.

PQ– очередь к ресурсу еслиPQравен 0 то ресурс свободен если не равен нулю тоPQсодержит адрес первого процесса который ждёт своей очереди.

Если ресурс запрашивают несколько процессов то создаётся список.

После исполнения процесса А идёт освобождение ресурса следовательно происходит разблокирование всех ресурсов.

2) Симофор считающий:

S=1 - ресурс свободенS=0 – ресурс занят

P(S)-операции на симофоре:S=S-1 если жеS<0 то процесс ставится в очередь

S(-1) - В в очередь

S(-2) – С в очередь

Модуль Sравен числу процессов стоящих в очереди.

V(S):S=S+1 если же симофор меньше либо равен нулю то процесс удаляется из очереди.

Бит доступа к управляющим таблицам - указывает можно ли корректировать. таблицу Устанавливается с помощью команды setandtest– без прерывания.

  1. Управление процессами - нижний уровень

Распределение времени центрального процессора:

а

b

f

готов

активен

e

d

Блокирован

a– с верхнего уровня поступают процессы один из которых является активным.

f- процесс завершается.

d– запрос ресурса у активного процесса который недоступен следовательно данный процесс становится заблокированным.

c– если процесс не завершился а время предоставленное процессу закончилось он может вернуться в очередь.

e– если заблокированному процессу предоставлен недостающий ресурс он переходит в разряд активных.

Характеристики алгоритмов управления процессами:

  1. Как организована очередь управления процессов.

  2. По какому правилу предоставляется время работы с процессором.

Квант времени – это минимальная единица времени, предоставляемая процессу для работы с процессором. Обычно процессу выделяется несколько квантов времени.

Время работы с процессором может предоставляться по следующим принципам:

  1. Бесконечно.

  2. Конечно и одинаково для всех процессов.

  3. Конечно но вычисляемо.

Возможны и комбинации.

Очередь готовых процессов:

1) FIFO (First in First out) - без приоритетов.

  1. По приоритетам то есть каждому процессу выделяется диспетчерский приоритет и очередь формируется в соответствии с приоритетом.

  2. Очередь с обратной связью Очередь готовых процессов разбивается на несколько очередей.

В основном используется понятие диспетчерских приоритетов.

Очередь 1

M1

Очередь 2

M2

Mn

Очередь n

После очереди 1 просматривается очередь 2.

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

Такой алгоритм формирования очереди предназначен для вынесения длинных процессов в конец.

  1. Основные алгоритмы управления процессами(END)

1) FIFO- формирование очереди и выделения квантов времени происходит следующим образом – очередь формируется по принципуFIFO, а квант времени выделяется бесконечный.

2) RR(RoundRobin) - – очередь формируется по принципуFIFO, а квант времени постоянный (этот алгоритм наилучший, если обслуживание процессов равноправно).

3) Приоритетное планирование – квант времени постоянный очередь формируется по приоритетам, которые процессы выпадают из обслуживания, но данный алгоритм позволяет выделить превелигированные процессы.

4) Алгоритм с вычисляемым квантом времени – очередь формируется по принципу FIFO, а квант времени вычисляется по приоритету(qk=q*pk, гдеpkназывается диспетчерским приоритетом).

5) Алгоритм с использованием очередей с обратной связью – очередь формируется по принципу очередей с обратной связью, а квант времени вычисляется по приоритету

  1. Алгоритм с вычисляемой многозадачностью

Данный алгоритм является модификацией предыдущих алгоритмов. В алгоритме с вычисляемой многозадачностью используется два приоритета: базовый (формировка очереди) и текущий (очередь переходит между активным и пассивным состоянием).

31

Постоянна

16

15

Приоритеты реального вр.

Динамическая область памяти

1

0

Очередь динамически делится на несколько групп (основная, выше основной, ниже основной, наинизшая наивысшая) – это очередь с обратной связью (существует 32 очереди с различными приоритетами).

готовый

выбранный

активный

ожидание

блокирован

Данный алгоритм позволяет ускорить процесс выполнения.

Блокирование может происходить с частью управляющей информации об этом процессе. Для него операционная система должна подгрузить остаток управляющей информации.

Если в очереди нет процесса с таким же приоритетом, то ему выделяется больше времени. Данный процесс выполняется до тех пор, пока не кончится его квант времени или не поступит процесс с более высоким приоритетом. При вытеснении данного процесса процессом с более высоким приоритетом старым процесс сохранит свой квант времени.

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