Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС-ЛР-05-2012.doc
Скачиваний:
6
Добавлен:
15.08.2019
Размер:
1.09 Mб
Скачать

Общее задание для выполнения

Работа с моделью

При запуске модели на экране появляется заставка. Для начала работы необходимо в главном меню выбрать пункт Моделирование → Моделирование... При этом на экране появляется диалог параметров моделирования.

Диалог параметров моделирования

Диалог параметров моделирования изображен на рис. 5. С помощью диалога можно выполнять следующие действия:

  1. Изменение параметров функционирования модели

    • Размер кванта времени - максимальное время, отводимое процессу на использование CPU. По истечении кванта времени CPU отдается другому процессу. Минимальное значение 1. Значение по умолчанию 8. Максималь­ное значение 20.

    • Объем оперативной памяти - измеряется в страницах. Минималь­ное значение 1. Значение по умолчанию 10. Максимальное значение 20 .

    • Стратегия замещения страниц - алгоритм, используемый менедже­ром памяти для выбора замещаемой страницы. Доступные значения: FIFO,LFU, NUR. Значение по умолчанию FIFO.

Рис. 5. Диалог параметров моделирования

  1. Изменение параметров трассировки:

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

  • Задержка автоматической трассировки - интервал времени в мс, через который происходит увеличение модельного времени при автоматиче­ской трассировке. Минимальное значение 1. Значение по умолчанию 1. Мак­симальное значение 5000.

  1. Пользовательские процессы:

- Добавление процесса. Для добавления пользовательского процесса в систему необходимо нажать кнопку "добавить". При нажатии этой кнопки по­является диалог, позволяющий задать имя добавляемого процесса. По умолчанию процессам даются имена вида "Процесс X".

  • Удаление процесса. Для удаления процесса необходимо выделить его в списке процессов и нажать кнопку удалить

  • Случайные запросы процессов. При установке этого флажка процес­сы будут заново формировать случайным образом список запросов к систе­ме при каждом перезапуске моделирования. При снятии флажка список сформируется только один раз при запуске программы, и процессы каждый раз будут формировать одни и те же запросы. Это позволяет ставить чистые эксперименты, не делая скидку на случайность запросов процессов. По умолчанию флажок снят. Проверить одинаковость запросов процессов мож­но многократно запуская моделирование, и наблюдая состояние системы в фиксированный момент времени (состояние системы должно быть одинако­вым).

  • Увеличить вероятность тупика. При установке этого флажка список запросов процессов будет сформирован таким образом, что с большой ве­роятностью в системе возникнет тупиковая ситуация. По умолчанию флажок снят.

  1. Начать моделирование/Продолжить моделирование/Отмена:

  • Начать моделирование. При нажатии этой кнопки запускается про­цесс моделирования с нулевого момента времени.

  • Продолжить моделирование. При нажатии этой кнопки моделирова­ние продолжается с точки приостановки. Таким образом, возможно динамическое изменение параметров моделирования. В реальных системах пара­метры не меняются динамически, и данная возможность носит чисто акаде­мический характер.

- Отмена. При нажатии этой кнопки происходит закрытие диалога без применения сделанных изменений.

После нажатия кнопки "Начать моделирование" система переходит в режим моделирования.

Режим моделирования

Внешний вид программы в режиме моделирования изображен на рис. 6.

Рис. 6 Режим моделирования

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

Окно "Процессы"

В этом окне отображается список процессов, выполняющихся в систе­ме. Процесс, выполняющийся в данный момент на процессоре, выделен красным цветом. Активный процесс (процесс, состояние которого отобража­ется в окне "Активный процесс") выделен темно - синей рамкой. Процессы можно активизировать путем нажатия мышкой на их названия в списке. Это позволяет в любой момент видеть состояние любого процесса (по отноше­нию к пользовательским процессам - дескриптор).

Окно "Активный процесс"

В этом окне отображается статус активного процесса (выделенного си­ней рамкой в окне "Процессы"). Статус включает в себя идентификатор (PID) процесса, а также специфическую для процесса информацию. Для пользо­вательских процессов - дескриптор, для менеджера памяти - карту памяти. Для файловой системы - очереди к ресурсам.

Окно "Системная очередь"

В этом окне отображаются очереди процессов, ожидающих выделения им кванта CPU.

Окно "Состояние системы"

Это окно содержит информацию о загрузке процессора и текущем мо­дельном времени.

Окно "Параметры модели"

Это окно содержит информацию о текущих параметрах модели.

Главное меню рабочего окна программы содержит пункты "Файл", "Мо­делирование" и "Помощь". В Подменю "Файл" содержится команда Выход, позволяющая выйти из системы. С помощью подменю "Помощь" можно уз­нать информацию о программе.

Подменю "Моделирование" содержит следующие пункты:

  1. Моделирование. Выбор этого пункта приводит к появлению диа­лога параметров моделирования. С его помощью можно динамически изме­нить настройки моделирования или перезапустить модель.

  2. Результаты. Выбор этого пункта приводит к появлению на экране окна с результирующим графиком.

  3. Пауза. Выбор этого пункта позволяет приостановить ход модели­рования

  4. Продолжить. Выбор этого пункта позволяет возобновить приоста­новленное моделирование

Режим просмотра результатов.

Внешний вид программы в режиме просмотра результатов изображен на рис. 7.

Рис. 7. Временная диаграмма режима просмотра результатов

В режиме результатов программа отображает график зависимости ра­боты процессора от модельного времени, иными словами, какой процесс использовал CPU в каждый конкретный момент времени.

По оси X отложено модельное время.

По оси Y - все находящиеся в системе процессы.

С по­мощью кнопок "+" и "-" пользователь может осуществлять масштабирование графика. С помощью бегунка осуществляется навигация по графику. При за­крытии диалога программа возвращается в режим моделирования.

Исследование результирующей временной диаграммы

Для оценки точности результирующей временной диаграммы сформи­руем таблицу событий происходящих в системе, и сравним ее с диаграммой. Для тестирования возьмем следующие параметры системы: Число пользо­вательских процессов 3. Объем ОП 10 страниц. Длительность кванта: 5. Дисциплина обслуживания NUR (рис.8).

Рис. 8. Результирующая временная диаграмма

Событие

1 - Процесс 10 вызвал страничный сбой

10 - В очереди появился процесс "Системные часы"

21 - В очереди появился процесс "Системные часы"

22 - Процесс 10 вызвал страничный сбой

32 - В очереди появился процесс "Системные часы"

33 - Процесс 11 вызвал страничный сбой

40 - Процесс 12 вызвал страничный сбой

45 - В очереди появился процесс "Системные часы"

48 - Процесс 10 вызвал страничный сбой

56 - В очереди появился процесс "Системные часы"

69 - В очереди появился процесс "Системные часы"

69 - Процесс 10 обратился к ресурсу Дисковод

76 - Процесс 11 обратился к занятому ресурсу Дисковод

80 - В очереди появился процесс "Системные часы"

89 - Процесс 12 вызвал страничный сбой

94 - В очереди появился процесс "Системные часы"

99 - Процесс 12 обратился к ресурсу "Винчестер"

105 - В очереди появился процесс "Системные часы"

115 - В очереди появился процесс "Системные часы"

122 - Процесс 10 передает ресурс "Дисковод" процессу 11

125 - В очереди появился процесс "Системные часы"

129 - Процесс 10 обратился к занятому ресурсу "Винчестер"

Оценка качества модели

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

Число страничных сбоев

Зависимость числа страничных сбоев от числа страниц ОП и алго­ритма замещения страниц

Для оценки этой зависимости построим в одних осях графики зависи­мости числа страничных сбоев от числа страниц при использовании различ­ных дисциплин обслуживания (ДО). Для объективности выполним тестирование при разных значениях числа пользовательских процессов (Табл. 1 а, b, с)

Таблица. 1а

Результаты тестирования числа страничных сбоев

(квант времени = 8,число процессов = 2)

Число страниц

Процент сбоев

FIFO

LFU

NUR

5

27

31

17

10

11

9

8

15

7

7

7

20

7

7

7

Таблица. 1b

Результаты тестирования числа страничных сбоев

(квант времени = 8, число процессов =6)

Число страниц

Процент сбоев

FIFO

LFU

NUR

5

56

57

35

10

39

34

16

15

21

20

11

20

12

12

7

Таблица. 1с

Результаты тестирования числа страничных сбоев

(квант времени = 8, число процессов =10)

Число страниц

Процент сбоев

FIFO

LFU

NUR

5

80

79

44

10

52

47

26

15

35

34

17

20

25

25

12

Рис. 8а. Зависимость числа страничных сбоев от объема ОП. Параметры тестирования: квант времени = 8, число процессов =2

Рис. 8b. Зависимость числа страничных сбоев от объема ОП. Параметры тестирования: квант времени = 8, число процессов =6

Рис. 8с. Зависимость числа страничных сбоев от объема ОП. Параметры тести­рования: квант времени = 8, число процессов =6

Из графиков (рис. 8а, b, с) можно сделать следующие выводы:

  • С увеличением ОП число страничных сбоев уменьшается. Это связано с тем, что увеличение ОП позволяет разместить больше страниц и реже возникает необходимость в операции вталкивания-выталкивания

  • Дисциплина LFU дает несколько лучшие результаты, чем FIFO.Дисциплина NUR дает почти в два раза меньше страничных сбоев, чем FIFOи LFU. Это ДО основана на предугадывании запросов процессов и является эталонной

  • На рис. 8а при числе страниц 15 и 20 все три ДО дают одинаковые результаты. Это означает, что системе удалось разместить все процессы в ОП и операций замещения страниц не происходит. Предпосылки к возникно­вению такой ситуации дает большой объем ОП и малое число процессов

  • С увеличением числа процессов возрастает число страничных сбоев. Это результат дефицита ресурса память для большого количества процессов.