Требования к отчету по л.р. „

Отчет должен содержать:

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

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

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

4. Протокол работы Вашей "системы" в соответствии с разрабо­танным тестовым примером.

5. Письменные ответы на контрольные вопросы к л.р. № 2.

4.2.6. Контрольные вопросы к л.р. № 2

1. Для какого режима работы ВС – а) разделения времени, б) реального времени, в) пакетной обработки – наиболее целесообразно использование квантование времени ЦП и почему?

2. Какое влияние оказывает длительность кванта времени ЦП на эффективность функционирования многопрограммной ОС?

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

4. Приведите преимущества и недостатки использования описан­ной диспетчеризации.

4.3. Лабораторная работа № 3.
"Реализация дисциплин диспетчеризации процессов с учетом
приоритетов".

Цель работы.

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

Содержание работы.

При выполнении лабораторной работы № 3 необходимо осуществить развитие дисциплины диспетчеризации, реализованной в ходе выпол­нения лабораторных работ NN 1,2. Развитие дисциплины диспетчериза­ции должно осуществляться по направлению учета приоритетов актив­ных процессов при реализации операций диспетчеризации "Запуск" и " Истечение_кванта".

4.3.1. Краткое описание схемы многоочередной диспетчеризации
с учетом приоритета.

Основу многоочередной дисциплины, учитывающей в процессе диспетчеризации по отношению к операциям "Запуск" и "Истечение_кванта" заранее известные приоритеты активных процессов, представляет выше описанная многоочередная дисциплина, реализуемая в л.р. № 2.

Очереди дескрипторов пополняются вследствие выполнения двух типов операций диспетчеризации – "Запуск" и "Истечение_кванта" (см. рис.4б и рис.5). Отметим, что в рассмотренной выше схеме многоочередной диспетчеризации (рис. 5) дескрипторы после выполн­ения по отношению к соответствующим им процессам операции "Запуск" всегда помещаются в 1-ю очередь (очередь с самым малень­ким номером). В ходе выполнения л.р. № 3 необходимо предпринять ряд изменений дисциплины диспетчеризации процессов, как при выпол­нении операции "Запуск", так и при выполнении операции "Истечение_кванта".

Первое. Необходимо модифицировать дисциплину диспетчеризации таким образом, чтобы дескрипторы процессов, поступающие в состо­яние готовность после выполнения по отношению к ним операции "Запуск", не обязательно попадали в 1-ю очередь, а помещались бы в очередь, номер которой определяется в соответствии с приорите­том поступающего процесса. Следовательно, необходимо осуществлять просмотр всех очередей дескрипторов процессов, начиная с начала первой очереди (помеченного символом * на рис.6).

Второе. При выполнении операции диспетчеризации "Истечетение_кванта" выполнявшийся процесс, выбранный из очереди с номером i, помещается в очередь i+1 в соответствии с комплексной дисциплиной типа HPF=FCFS.

Третье. В том случае, если приоритет вновь поступившего (запущенного) процесса выше, чем приоритет выполняющегося в данный момент процесса, то последний должен быть переведен в состояние готовность, не дожидаясь завершения выделенного кванта процессорного времени, а вновь поступивший процесс - в состояние выполнение. (Такая дисциплина диспетчеризации носит название диспетчеризация с абсолютным приоритетом). Формально, операция "Запуск" при диспетчеризации с абсолютным приоритетом может быть представлена следующим образом:

Запуск (имя_нового_процесса) :

если рriorety.новый_процесс > рriorety.выполняемый_процесс

то выполняемый_процесс: выполнение -> {готовность|ожидание};

новый_процесс: начальное состояние -> выполнение;

иначе новый_процесс: начальное состояние -> готовность.

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

Приоритетная_приостановка:

выполняемый_процесс: выполнение ->

{готовность|ожидание}.

Вышеприведенная формализация операции "Запуск" предполагает, что все ресурсы, необходимые для выполнения нового процесса ему выделены. Выделение ресурсов (необходимого объема ОП или/и внеш­ней памяти, необходимых УВВ или/и ВЗУ) может потребовать перевод ряда менее приоритетных процессов из состояния готовности в состояние ожидания.

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

Очередь1

Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru

Конец … начало
Запуск Выбор Завершение

                   
    Требования к отчету по л.р. „ - student2.ru
    Требования к отчету по л.р. „ - student2.ru
  Требования к отчету по л.р. „ - student2.ru
      Требования к отчету по л.р. „ - student2.ru
 
        Требования к отчету по л.р. „ - student2.ru
 
 

Очередь2

Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru

Конец … начало

           
  Требования к отчету по л.р. „ - student2.ru
    Требования к отчету по л.р. „ - student2.ru
    Требования к отчету по л.р. „ - student2.ru
 
 

Очередь3

Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru

Конец … начало

       
    Требования к отчету по л.р. „ - student2.ru
 
  Требования к отчету по л.р. „ - student2.ru

:

:

Очередь1

Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru

Конец … начало

       
    Требования к отчету по л.р. „ - student2.ru
 
  Требования к отчету по л.р. „ - student2.ru

:

:

Очередь n-1

Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru

Конец … начало

       
    Требования к отчету по л.р. „ - student2.ru
 
  Требования к отчету по л.р. „ - student2.ru

Очередь n

Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru Требования к отчету по л.р. „ - student2.ru

Конец … начало

       
    Требования к отчету по л.р. „ - student2.ru
 
  Требования к отчету по л.р. „ - student2.ru

Истечение_кванта

Требования к отчету по л.р. „ - student2.ru

Приоритетная_остановка

Требования к отчету по л.р. „ - student2.ru

Рис. 6. Схема многоочередной диспетчеризации с учетом абсолютного приоритета запускаемого процесса.

Итак, в ходе первых трех работ практикума предполагается достроить основу "системы" диспетчеризации процессов и средств, позволяющих помещать запускаемые процессы в одно из активных состояний, а также осуществлять ряд операций создания/удаления процессов: "Порождение", "Удаление", планирования процессов:

"Запуск", "Завершение", {"Окончание"}, диспетчеризации процессов:

"Выбор", "Истечение _кванта". В ходе последней работы практикума будут рассмотрены аспекты запросов ресурсов и их выделения при выполнении процесса.

Наши рекомендации