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

Планирование работ в вычислительных системах

Цель работы: освоение простейших алгоритмов планирования выполнения работ на заданном наборе ресурсов вычислительной системы.

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

Потребность работ J1,J2,...,Jm в ресурсах F1,F2,...,Fn характеризуется матрицей трудоемкости работ

F1

F2

. . .

Fn

J1

t11

t12

. . .

t1n

J2

t21

t22

. . .

t2n

T = [ tij ] =

. . .

. . .

. . .

. . .

. . .

Jm

tm1

tm2

. . .

tmn

где tij - означает потребность работы Ji в ресурсе Fj.

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

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

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

Поэтому следует учитывать дополнительные факторы, основные из которых следующие:

- степень детерменированности характеристик работ и порядка их поступления в вычислительную систему;

- затраты времени на выполнение алгоритма высокоэффективного планирования.

Если характеристики работ и время их поступления известны с высокой точностью, то следует воспользоваться результатами прикладной математической дисциплины известной под названием теория расписаний [1]. Но обычно, за редким исключением, оптимальное расписанием может быть найдено только методом полного перебора, так как данный класс задач относится к комбинаторным задачам. Даже при небольшом числе работ полный перебор всех вариантов расписания требует больших затрат машинного времени.

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

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

В данной лабораторной работе следует найти квазиоптимальный вариант пропуска десяти задач через вычислительную систему, состоящую из двух устройств ввода, процессора, устройства вывода и ОЗУ ограниченной емкости. При этом предполагается,что порядок использования ресурсов каждой из задач одинаков и заключается в следующем. Запуск задачи на выполнение начинается с ввода некоторой информации с первого устройства ввода. Затем вводится дополнительная информация со второго устройства ввода и начинается счет на процессоре, который заканчивается выводом результатов на внешнее выходное устройство. Прообразом таких задач может служить пропуск программы на каком-либо алгоритмическом языке через вычислительную систему. Программа вводится в систему с некоторого носителя ( перфокарты, перфоленты, магнитного диска, клавиатуры и т.д.). С какого-либо внешнего запоминающего устройства вводится требуемый транслятор или другое программное обеспечение. Затем выполняется этап трансляции программы, редактирование связей и при отсутствии синтаксических ошибок осуществляется счет по полученной машинной программе. Результаты трансляции и счета выводятся на какое-либо устройство - дисплей, принтер, внешнее запоминающее устройство и т.д. В рассматриваемых программах не предполагается многократное использование внешних устройств, то есть операторы ввода-вывода не входят в тела циклов. При отсутствии такого допущения соответствующие внешние устройства требуется отдать какой-либо из программ в монопольной пользование на время ее выполнения.

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

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

В дальнейшем для примеров будет использоваться матрица трудоемкости вида

F1

F2

CPU

F3

MEM

J1

8

9

10

11

12

J2

7

6

5

4

15

Т =

J3

4

3

2

1

10

( 1 )

J4

5

6

7

8

19

J5

4

3

2

2

10

Т Р У Д О Е М К О С Т Ь В Ы П О Л Н Е Н И Я Р А Б О Т

Таблица 4.1

Номер варианта

УВВ F1, сек

УВВ F2, сек

Процессор CPU, сек

УВВ F3, сек

ОЗУ, страниц

1

1

2

3

4

5

2

10

9

8

7

6

3

11

10

9

8

15

4

2

1

8

7

16

5

2

2

3

4

25

6

3

4

2

3

24

7

9

8

7

6

15

8

10

9

2

3

14

9

9

8

7

10

5

10

2

1

2

3

4

11

3

4

5

6

7

12

2

6

4

9

8

13

3

4

8

5

17

14

2

5

9

6

18

15

6

5

4

3

23

16

8

9

2

2

22

17

7

6

5

4

13

18

8

9

10

11

12

19

9

7

5

8

3

20

4

6

8

9

2

21

5

6

7

8

9

22

4

3

2

7

10

23

5

6

7

9

19

24

4

5

3

6

20

25

5

9

6

2

21

26

9

8

7

6

20

27

5

2

9

6

11

28

10

7

3

8

10

29

11

9

11

10

15

30

2

4

6

7

9

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

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