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

1. Планирование работ на основе двухфазной модели

вычислительной системы

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

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

F1

F2

J1

17

21

J2

13

9

T =

J3

7

3

( 2 )

J4

11

15

J5

7

4

Обозначим продолжительности выполнения работ J1,J2,...,Jm в первой фазе через t11,t21,...,tm1, а во второй фазе - t12,t22,...,tm2 соответственно.

Алгоритм оптимального планирования в такой постановке состоит из следующих этапов:

1.1. Отметим начало очереди работ позицией a = 1 и конец очереди - позициеей b = m.

1.2. В матрице трудоемкости находится минимальное значение t = min( t11,t12,...,tm1,tm2 ).

1.3. Выделяются работы Jk,...,Jn, для которых tij = t ( i = k,...,n; j = 1,2 ).

1.4. Если выделена единственная работа Jk, то при tk1 = t, она ставится в начало очереди, опредеяемой позицией a, а при tk2 = t - в конец очереди в позицию b. Затем выполняется пункт 1.7.

1.5. Если выделено несколько работ Jk,...,Jn, то они разделяются на две группы:

а) c одинаковыми временами выполнения в первой фазе tk1,...,tn1, равными t;

b) c одинаковыми временами выполнения во второй фазе tk2,...,tn2, равными t.

1.6. Работы из первой группы заносятся в начало очереди с позиций a, a+1, ... в порядке увеличения значений ti2, ..., tj2. Работы из второй группы заносятся в конец очереди в позиции b, b-1, ... в порядке увеличения значений ti1,...,tj1.

1.7. После включения работы в начало или конец очереди работа вычеркивается из матрицы трудоемкости и переменной a или b присваивается новое значение a = a + 1 или b = b - 1.

1.8. Процесс продолжается из пункта 1.2 до распределения всех работ по позициям очереди.

Для матрицы трудоемкости ( 2 ) в соответствии с вышеизложенным алгоритмом планирование работ выполняется следующим образом:

1.1. Присваиваем a = 1 и b = 5.

1.2. Находим минимальное значение t = 3 матрице трудоемкости.

1.3. Выбираем работы, для которых tij = t = 3:

F1

F2

J3

7

3

1.4. Так как выделена единственная работа с минимальным значением t из второй фазы, то она ставится в конец очереди и b = 4.

1.5. Вычеркиваем упорядоченные работы из матрицы трудоемкости ( 2 ) и получим следующую матрицу трудоемкости:

F1

F2

J1

17

21

J2

13

9

T =

J4

11

15

J5

7

4

1.6.В новой матрице трудоемкости находим минимальное значение t = 4.

1.7.Выбираем работы, для которых tij = t = 4:

F1

F2

J5

7

4

1.8.Так как выделена единственная работа с минимальным значением t из второй фазы, то она ставится в конец очереди и b = 3.

1.9.Получаем новую матрицу трудоемкости путем вычеркивания упорядоченных работ:

F1

F2

J1

17

21

T =

J2

13

9

J4

11

15

1.10. Повторяя предыдущее, опредеяем, что работа J2 ставится в конец очереди и b = 3. Следующая матрица трудоемкости имеет вид

F1

F2

J1

17

21

T =

J4

11

15

1.11. Находим в последней матрице минимальное значение t = 11.

1.12. Выбираем единственную работу, для которой tij = t = 11

F1

F2

T =

J4

11

15

1.13. Ставим выделенную работу в начало очереди, так как минимальное значение t соответствует первой фазе и a = 2.

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

1

2

3

4

5

J4

J1

J2

J5

J3

Диаграмма выполнения этих работ представлена на рис.4.1, откуда следует, что весь пакет выполняется за 65 единиц времени. Несложно убедиться, что пропуск пакета в порядке противоположном оптимальному расписанию потребует 84 единицы времени.

Диаграмма выполнения двухфазной модели по расписанию

t

4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64

F1

J4 J1 J2 J5 J3

t

F2

J4 J1 J2 J5 J3

t

Рис.4.1

Диаграмма выполнения трехфазной модели по расписанию

t

4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64

F1

J1 J4 J2 J5 J3

t

CPU

J1 J4 J2 J5 J3

t

F2

J1 J4 J2 J5 J3

t

Рис.4.2

Соседние файлы в папке Компьютерные системы 3 курс