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

22

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ИНСТИТУТ

(ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)

Кафедра 304

ЭЛЕМЕНТЫ ОПЕРАЦИОННЫХ СИСТЕМ ЭВМ

Лабораторные работы

Ю.А.Голубков

Москва, 2006

Лабораторная работа №1

АНАЛИЗ ПРОИЗВОДИТЕЛЬНОСТИ МУЛЬТИПРОГРАММНЫХ

ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ

В данной лабораторной работе определение производительности мультипрограммной ВС с равномерным квантованием времени и учетом ввода-вывода будет рассмотрено по методу, описанному в работе Дрейка.

1.1. Анализ влияния параметров ВС на производительность

Предполагается, что в ОЗУ находится n процессов, которые обслуживаются равноправно с равномерным квантованием времени. Далее предполагается, что все процессы имеют одинаковый процент времени ожидания ввода-вывода - .

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

S0 - все процессы, кроме одного, находятся в состоянии готовности, один из них выполняется;

Si - i процессов находятся в состоянии ожидания ввода-вывода;

Sn – все n процессов ожидают завершения обмена, т.е. процессы блокированы, процессор простаивает.

Требуется оценить вероятность Pn пребывания системы в состоянии Sn.

Диаграмма состояний и переходов аналогична модели марковского процесса размножения-гибели приведена на рис.1.1.

а) запрос

на вв/выв

dt dt dt … dt

S0 S1 S2 Sn

dt 2dt 3dt ndt

завершение вв/выв

Рис. 1.1

Дуга перехода определена вероятностью этого перехода. Определим dt как вероятность блокировки обслуживаемого процесса вследствие выдачи им запроса на ввод-вывод к моменту следующего наблюдения (1/ - представляет средний интервал между запросами на ввод-вывод). Аналогично dt представляет вероятность завершения ввода-вывода к следующему моменту наблюдения (1/ - среднее время обслуживания запроса на ввод-вывод). Следует обратить внимание, что дуга перехода из S2 в S1 имеет вес 2dt. Это следует из предположения, что оба запроса на ввод-вывод независимо обслуживаются отдельными каналами и вероятность того, что к следующему моменту закончится выполнение хотя бы одного из запросов, равна

dt + dt = 2dt

По аналогии переходу из состояния i в (i-1) соответствует вероятность idt. Для систем без мультипрограммирования процент времени ожидания ввода-вывода

Для упрощения модели предполагается, что:

1) число переходов Si  Si+1 равно числу переходов Si+1  Si (выполняется условие стационарности Pi,i+1 Pi= Pi+1,i Pi+1 ).

Отсюда имеем:

dt P0=dt P1

dt P1=2dt P2 (1.1)

. . .

dt Pn-1=ndt Pn

2) Сумма вероятностей по всем состояниям системы

Далее можно определить вероятность Pn пребывания системы в состоянии Sn (когда все процессы блокированы, а процессор простаивает).

Из приведенной системы (1.1) следует:

Так как

Поскольку

Отсюда имеем:

Из системы (1.2) имеем:

Используя выражение для P0, получим:

Тем самым можно построить таблицу для различных значений n и 0.1    0.95. Заметим, что  определяет коэффициент загрузки процессор – канал – УВВ.

1.2.Анализ влияния синхронизации на производительность вс

Предполагается, что в системе используется n процессоров, где n1 (от 10 и больше). При работе мультипроцессорной системы следует различать два различных типа блокировок процессоров. Они различаются по тому, как используется процессор, обслуживающий прерванный процесс. Если при использовании семафоров для ожидания завершения обмена процессор освобождается и может обслуживать другой процесс, то в других случаях это не так. При использовании процессором команд типа TS (Text and Set) процессор вынужден непрерывно повторять цикл проверки байта блокировки ресурса до тех пор, пока он не будет сброшен в 0. Тем самым процессор «связывается» с ресурсом и не может использоваться до освобождения ресурса.

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

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

Пусть в ходе выполнения отдельного процесса интервалы времени между обращениями к базе данных подчиняются обратному экспоненциальному закону распределения с параметром 1/E (т.е. математическое ожидание интервала времени между обращениями равно Е). Пусть математическое ожидание продолжительности интервала блокировки процессора равно L. Тогда отношение L/(E+L) дает грубую оценку доли времени пребывания ресурса в состоянии блокировки в мультипрограммной системе с одним процессором, (блокировки процессора не происходит). В мультипроцессорной системе каждый процессор может быть в одном из состояний:

  1. производить обслуживание процесса, обращающегося к базе через интервалы времени, определяемые параметром 1/Е;

  2. заниматься обработкой ресурса, защитив его байтом блокировки на период времени, характеризуемый параметров 1/L;

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

Н а рис.1.2 каждое состояние Si отвечает ситуации, когда i процессоров пытаются получить доступ к базе данных. Один из них работает с базой данных, остальные i-1 ожидают ее освобождения.

S0 S1 S2 Sn-1 Sn

Рис. 1.2

Вероятность перехода из состояния i в состояние i-1 за время dt равна (1/L)dt. Это означает, что время обработки процессором блокированного от посторонних воздействий базового ресурса не зависит от числа процессоров, ожидающих его освобождения. Вероятность перехода из состояния i в состояние i+1 на интервале dt равна (n-1)(1/E)dt. Это соответствует тому факту, что каждый из еще не заблокированных (n-i) процессоров может запрашивать доступ к блокированному ресурсу с вероятностью (1/E)dt. Повторяя рассуждения, приведенные ранее для стационарного процесса, получаем, что:

Критерием производительности системы является среднее ожидаемое число процессоров, «простаивающих» из-за программных блокировок

Из приведенных соотношений: