Управление процессами. Многопоточность.




Многопоточность- способность операционной системы поддерживать в рамках одного процесса выполнение нескольких потоков.

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

· управляющий блок процесса;

· пользовательское адресное пространство;

· стеки ядра и пользователя(с помощью которых осуществляются вызовы процедур и возвраты из них при выполнении процесса).

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

Основные преимущества использования потоков с точки зрения производительности.

· Создание нового потока в уже существующем процессе занимает меньше времени, чем создание нового процесса.

· Поток можно завершить быстрее, чем процесс.

· Переключение потоков в рамках одного и того же процесса происходит быстрее.

· При использовании потоков повышается эффективность обмена информацией между двумя выполняющимися программами.

 

14) Управление процессами. Типы планирования процессора.

Долгосрочное планирование – решение о добавлении процесса в пул выполняемых процессов.

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

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

Планирование ввода-вывода – решение о том, какой из запросов процессов на операции ввода-вывода будет обработан свободным устройством ввода-вывода.

Управление процессами.

Критерии краткосрочного планирования.

Функция выбора и режим решения.

Пользовательские, связанные с производительностью

· Время оборота (Интервал времени между подачей процесса и его завершением. Включает время выполнения, а также время, затраченное на ожидание ресурсов, в том числе и процессора)

· Время отклика (В интерактивных процессах это время, истекшее между подачей запроса и началом получения ответа на него)

· Предельный срок (При указании предельного срока завершения процесса планирование должно подчинить ему все прочие цели максимизации количества процессов, завершающихся в срок)

Пользовательские, иные

· Предсказуемость (Данное задание должно выполняться примерно за одно и то же количество времени и с одной и той же стоимостью, независимо от загрузки системы)

Системные, связанные с производительностью

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

· Использование процессора (Этот показатель представляет собой процент времени, в течение которого процессор оказывается занят)

Системные, иные

· Беспристрастность (При отсутствии дополнительных указаний от пользователя или системы все процессы должны рассматриваться как равнозначные и ни один процесс не должен подвергнуться голоданию)

· Использование приоритетов (Если процессам назначены приоритеты, стратегия планирования должна отдавать предпочтение процессам с более высоким приоритетом)

· Баланс ресурсов (Стратегия планирования должна поддерживать занятость системных ресурсов)

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

Режим решения определяет, в какие моменты времени выполняется функция выбора.

· Вытесняющие: Выполняющийся в настоящий момент процесс может быть прерван и переведен операционной системой в состояние готовности к выполнению.

· Невытесняющие: В этом случае находящийся в состоянии выполнения процесс продолжает выполнение до тех пор, пока он не завершится или пока не окажется в заблокированном состоянии ожидания завершения операции ввода-вывода или запроса некоторого системного сервиса.

16) Управление процессами. Алгоритмы планирования FCFS и RR.

· Первым поступил — первым обслужен(FCFS)

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

· Круговое планирование(RR)

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

17) Управление процессами. Алгоритмы планирования SPN и SRT.

· Наиболее короткий процесс следующий(SPN)

Если в очереди появляется короткий процесс, то он выполняется первым. Автоматически система не может определить какой процесс короче.

· Наименьшее остающееся время(SRT)

В этом случае планировщик выбирает процесс с наименьшим ожидаемым временем до окончания процесса.

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

18)Управление процессами. Алгоритмы планирования HRRN и FB.

· Наивысшее отношение отклика(HRRN)

Рассмотрим соотношение

R= w+s /s, где

R — отношение отклика;

w — время, затраченное процессом на ожидание;

s — ожидаемое время обслуживания.

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

· FB (feedback) Снижение приоритета

Выполняется вытесняющее (по квантам времени) планирование с использованием динамического механизма. При входе процесса в систему он помещается в очередь RQ0. После первого выполнения и возвращения в состояние готовности процесс помещается в очередь RQ1. В дальнейшем при каждом вытеснении этого процесса он вносится в очередь со все меньшим приоритетом.

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

Такой подход известен как многоуровневый возврат (multilevel feedback2), поскольку при блокировании или вытеснении процесса осуществляется его возврат, на очередной уровень приоритетности.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2022-09-06 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: