
- •1. Возникновение информационных технологий
- •2. Понятия систем и управления Понятие систем
- •1.2.Управление в системах
- •3. Концептуальная модель базовой информационной технологии
- •.Общие требования, предъявляемые к современным компьютерам
- •7. Числовая и нечисловая обработка
- •2.3.1.Последовательные конвейеры
- •2.3.2.Векторные конвейеры
- •2.5.1.Классификация систем параллельной обработки данных
- •2.5.2. Мультипроцессорные системы с общей памятью
- •2.5.2. Мультипроцессорные системы с локальной памятью и многомашинные системы
- •14. Векторные конвейерные процессоры
- •17. Концепция вычислительных систем с управлением потоком данных
- •3.2.Потоки событий
- •20. Схема гибели и размножения.
- •23. Одноканальная смо с неограниченной очередью
- •3.6.1.1.Алгоритм spt
- •3.6.1.3.Алгоритм fb
- •3.6.2.1.Методы управления ресурсами многопроцессорных систем при обработке пакетов задач с прерываниями
- •3.6.2.2. Управление ресурсами многопроцессорных систем при обработке пакетов независимых задач без прерываний
- •3.6.3.1. Мпс с общей памятью
- •3.6.3.1.Характеристики мпс с общей памятью
- •3.6.3.2. Мпс с индивидуальной памятью
- •3.6.3.2.Характеристики мпс с индивидуальной памятью
- •Базовые топологии локальных компьютерных сетей
- •29. Методы доступа к общей шине в лвс
- •4.5.5.1.Методы Алоха
- •4.5.5.2.Случайный доступ типа мдпн/ос ( csma/cd)
- •31. Топология глобальной вычислительной сети (гвс)
- •34. Емкость канала связи
- •4.6.1.1.Сети с коммутацией каналов
- •4.6.1.2.Сети с коммутацией сообщений
- •4.6.1.3.Сеть с пакетной коммутацией
- •4.6.2.1.Метод скользящего окна
- •4.6.3.1.Алгоритм Дейкстры
- •4.6.3.2.Алгоритм Флойда
- •4.7.5. Удаленный доступ к ресурсам сети
3.6.1.1.Алгоритм spt
В
системах оперативной обработки в
качестве основного критерия эффективности
используется средне время обслуживания
заявок. Нетрудно видеть, что в случае,
когда времена решения задач априори
известны, минимальное среднее время
ответа дает алгоритм SPT
(Shortest-processing-task-first), назначающий задачи
на решение в порядке убывания времени
решения ti,
то есть t1t2...tL
.
При
этом время ответа ui
для задачи zi
есть ui=
tj,
где
tj-
время
ожидания
, ti
-
собственно время решения и среднее
время ответа есть
.
Покажем, что u* действительно минимальное значение среднего времени обслуживания. Для того чтобы показать, что u* действительно минимально среди u для всех перестановок, достаточно показать, что применение к произвольной перестановке (1,...,L) любой парной транспозиции, меняющей местами элементы k и l, где tl tk и l>k, может лишь уменьшить исходное значение u, соответствующее перестановке (1,...,L), где i - номер задачи, назначаемой на решение i-й по порядку, i=I,L. Действительно, пусть задачи с номерами k и l поменялись местами. Тогда для полученной перестановки среднее время обслуживания равно
Нетрудно видеть, что
,
а потому
,
так как l > k, а tl tk. Следовательно, перемещение вперед задачи с меньшим временем решения приводит к уменьшению среднего времени обслуживания. В перестановке (1, ... ,L) при условии, что t1 ... 7tL, нельзя сделать ни одной такой улучшающей транспозиции, а потому u* есть минимальное среднее время обслуживания и алгоритм SPT дает оптимальное решение рассматриваемой задачи.
3.6.1.2.Алгоритм RR
В реальных системах оперативной обработки априорная информация о временах решения задач, как правило, отсутствует. Чтобы воспользоваться принципами планирования на основе алгоритма SPT, в систему вводятся средства, обеспечивающие выявление коротких и длинных работ непосредственно в ходе вычислительного процесса.
Простейшее правило планирования работ, обеспечивающее выполнение указанного требования, задается алгоритмом циклического обслуживания, или, иначе, алгоритмом RR (Round–Robin). Работа алгоритма иллюстрируется рисунком 3.10.
Рисунок 3.10 - Циклическое обслуживание заданий
Заявки на выполнение работ поступают с интенсивностью в очередь , откуда они выбираются и исполняются процессором Пр. Для обслуживания отдельной заявки отводится постоянный квант времени q, достаточный для выполнения нескольких тысяч операций. Если работа была выполнена за время q, она покидает систему. В противном случае она вновь поступает в конец очереди и ожидает предоставления ей очередного кванта процессорного времени.
Оценим среднее время ожидания и пребывания работ в системе с циклическим планированием. Воспользуемся для этого аппаратом теории массового обслуживания. Для упрощения последующих выкладок предположим, что длительность кванта - не постоянная величина, а случайная, распределенная по экспоненциальному закону с тем же средним значением q. Примем также, что на вход системы поступает простейший поток с интенсивностью работ в единицу времени, и с вероятностями или (1-) работа не будет или соответственно будет завершена в текущем кванте. Из последнего предположения следует, что вероятность того, что работа будет выполнена точно за k квантов (не завершена за первые k-1 квантов и завершена в k-том варианте), описывается геометрическим распределением
pk=k-1(1-), k=1,2,...
со средним
Таким
образом, если известны средняя
трудоемкость работ
и
длительность q
кванта, то среднее количество
квантов, с одной стороны, равно /q,
а с другой – полученному выше выражению,
то есть
,
откуда
.
Определим среднее время ответа для работы J, требующей ровно единиц времени обработки. Пусть m – наименьшее целое, при котором mq (то есть m – число квантов, достаточное для обслуживания заявки). Рассмотрим состояние системы на момент поступления работы J. При поступлении работы J в системе в среднем находится W1 других работ. Значение N1 определяется как среднее число заявок в системе с бесприоритетным обслуживанием, на вход которой заявки поступают с интенсивностью
n
(с учетом интенсивности поступления заявок на дообслуживание в последующих тактах) и обслуживаются по экспоненциальному закону со средним q. Для определения W1 требуется найти распределение вероятностей {pk} того, что в очереди будет ровно k заявок. Тогда
W1= kpk.
Для определения pk составим систему дифференциальных уравнений Колмогорова с помощью графа переходов (рисунок 3.11).
(q)
Рисунок 3.11 – Граф состояний (переходов)
Здесь Si – состояние системы с i заявками в очереди (одна из них обслуживается). Тогда система уравнений имеет вид
p`i =pi-1 - pi - pi + pi+1,
или
p`i =pi-1 - (+)pi + pi+1, i=1,2,...
p`0 = -p0 + p1.
Кроме того, требуется соблюдение условия нормировки
.
Рассмотрим установившийся режим, то есть считаем, что t. Тогда вместо дифференциальных уравнений получаем алгебраические
pi-1 - (+)pi + pi+1=0, i=1,2,...
p0 + p1=0,
p0 + p1 + ... + pi + ... =1.
Из второго уравнения выразим p1 через p0 :
p1 = * p0 ;
подставим это значение в первое уравнение с i=1. Тогда
Делаем
индуктивное предположение:
. Тогда из k-го уравнения получаем
откуда
,
что подтверждает индуктивное
предположение. Поэтому в соответствии
с условием нормировки получим
где
.
На основании полученного выражения
С учетом допущения об экспоненциальности распределения кванта q время дообслуживания работы J не зависит от этого момента и в среднем равно q. Таким образом, работа будет ожидать W1q единиц времени до получения первого кванта. За время W1q и первый квант выполнения работы J в систему поступит новых работ. Кроме того, W1 работ из их общего числа W1 вернутся обратно в очередь на довыполнение. Поэтому в следующем цикле работа J застанет в системе W2 работ:
W2 = W1q + q + W1.
Подставляя в последнее выражение ранее полученное значение W1, получаем
В общем случае аналогично получаем
Wi = Wi-1q + q + Wi-1 = /(1-).
Среднее время ожидания для работы J, время выполнения которой составляет m квантов, равно
m
= q
=
mq/(1-)
.
Здесь среднее время ожидания m определяется как время, необходимое для обслуживания всех Wi работ, стоящих впереди работы J в каждом из m циклов обслуживания. Среднее время ответа для работы J
Um = m +mq = mq/(1-),
где = q/(1-) = q/(q/) = – загрузка системы. Из выражения для времени ожидания m видно, что время ожидания обслуживания возрастает с увеличением трудоемкости mq задачи. В то же время при обслуживании задач в порядке поступления без прерываний среднее время ожидания не зависит от трудоемкости и составляет
,
где
,
– средняя трудоемкость.
Сравним и m:
Из последнего выражения видно, что время ожидания длинных задач (mq>) больше, чем при обслуживании в порядке поступления, а время ожидания коротких задач (mq<) – меньше времени ожидания в режиме без прерываний.