Процесс обработки информации

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

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

Источник вычислительных задач фор­мирует входной поток заявок на их решение. С помощью диспет­чера реализуется опознавание поступившей заявки и постановка ее в очереди, которая ожидает начала обслужи­вания в зависимости от требуемой информационной нагрузки на ячейках оперативной памяти. Заявки отображаются кодами и взаимосвязи между задачами. Диспетчер выбирает из очередей заявку на обслуживание, т.е. передает вычислительную задачу для обработки на ЭВМ. Обслуживание обычно осуществляется в соответствии с принятым планом организации вычислительного процесса. Про­цесс выбора заявки из множества называется диспетчированием Обычно выбирается заявка, имеющая преимущественное право на обслуживание. При этом инициируется соответствующая програм­ма, реализующая вычислительный алгоритм решения требуемой задачи. При отсутствии заявок в очередях диспетчер Д2 переключает процессоры ЭВМ в состояние ожидания. В общем случае в вычис­лительной системе реализуется многолинейное обслуживание за счет наличия ЭВМ1...ЭВМs. Можно считать, что процесс обслужива­ния осуществляется в два этапа. Сначала заявки ставятся в очередь с помощью диспетчера Д1, а на следующем этапе они обслуживают­ся путем выбора заявок из очереди на основе работы диспетчера Д2. Диспетчеры реализуются программным путем, представляя собой управляющие программы. При появлении заявки работа процессора прерывается, заявка вводится в вычислительную систе­му, далее передается управление диспетчеру, который определяет последовательность обслуживания поступивших заявок с учетом имеющихся в ЭВМ. На логическом уровне могут быть заданы правила диспетчирования, т.е. дисциплина обслуживания. При разработке модели обработки данных удобно предположить, что все операции по планированию вычислительного процесса, определению приоритетов, передаче заявок от одной ЭВМ к другой выполняет диспетчер, а сам процесс обслуживания реализуется набором ЭВМ.

Модели обслуживания вычислительные задач. При наличии пла­на организации вычислительного процесса основная проблема заключается в обслуживании заявки, которое характеризуется време­нем пребывания заявки в системе. Это время складывается из времени ожидания в очереди и времени обслуживания, представ­ляющего собой время обработки информации процессором на ос­нове принятой программы. Анализ процесса обслуживания заявки может быть выполнен на основе теории массового обслуживания. Тогда вычислительная система может быть представлена математи­ческой моделью системы массового обслуживания, которая харак­теризуется числом обслуживающих приборов, т.е. ЭВМ, дисципли­ной образования очереди, числом вычислительных задач в ИВЗ и дисциплиной обслуживания очереди с помощью диспетчера Д2. В зависимости от того, какое число ЭВМ используется, различают одно- и многолинейные системы. Даже для многолинейной системы может наблюдаться случай, когда все обслуживающие приборы, т.е. ЭВМ, будут заняты. Тогда модель системы может предпола­гать такой поток заявок, который не ждет обслуживания, и возника­ет система с потерями. Физически это возможно либо когда очередь не предусматривается, либо когда имеется полное заполнение оче­реди.

Другая модель системы характеризуется тем, что заявка на решение вычислительной задачи, поступившая в вычислительную систему, может ожидать и покидает ее только после полного об­служивания. В реальных вычислительных системах это оказывается возможным благодаря тому, что предусматриваются очереди O1 - ON. Так как очередь не может быть неограниченной, то данная система характеризуется числом заявок, ожидающих начала обслуживания. Возможны дополнительные ограничения на время ожидания, на время пребывания заявки в вычислительной системе и др. Существенное влияние как на параметры обслуживающей системы, так и на процесс ее анализа оказывает характер входящего потока заявок. Заявки от ИВЗ образуют во времени поток, который может иметь ограниченное или неограниченное число задач. Раз­личными могут быть и правила обслуживания заявок, находящихся в очереди. В соответствии с этим устанавливается некоторая дис­циплина обслуживания диспетчером Д2. Естественной дисциплиной является дисциплина FIFO. Воз­можен инверсный подход - LIFO. Допускаются и случайные дисциплины обслуживания, когда заявки из очереди выбираются в произвольном порядке. В ряде случаев заявки обладают приоритетами. Это наиболее характерно для реальных задач АСУ, в которых имеются информационные взаимосвязи. Тогда заявки имеют разную степень важности по времени исполнения и каждой заявке присваивается некоторый приоритетный индекс. Заявка с меньшим индексом имеет наиболь­ший приоритет. Для приоритетного обслуживания различают дис­циплины абсолютного, относительного и смешанного приоритетов. Абсолютный предполагает прерывание обслуживания заявки при поступлении более приоритетной. При относительном приоритете обслуживание заявки продолжается, а после его завершения на обслуживание принимается поступившая приоритетная заявка, т.е. прерывание обслуживания не допускается. При смешанном приоритете ЭВМ выбирает либо новую заявку, либо продолжает обслуживание предыдущей заявки. Критерием выбора может служить время обслуживания заявки.

В теории массового обслуживания под временем обслуживания понимают время, которое затрачивается на обслуживание одной заявки конкретным обслуживающим прибором (ЭВМ). В общем случае время обслуживания характеризуется определенным законом распределения F(t) = P(tобс<t), где P(tобс<t) - вероятность того, что время обслуживания tобс < t. При tобс £ 0 должно быть F(t)=0. В зависимости от закона распределения заявки на решение вычислительные задачи могут быть разделены на типы. В рамках одного и того же закона распределения заявки можно различать по среднему времени об­служивания. Время обслуживания реальной заявки на ЭВМ опреде­ляется числом операций, входящих в программу. Существенное влияние на это время оказывает и разветвленность программы. Для слабо разветвленных программ число выполняемых операций практически для каждой задачи одинаково и может быть использована модель с постоянным временем обслуживания. При значительной разветвленности программы в зависимости от типа заявки ее реализация может пойти по разным направлениям, время выполнения программы будет случайной величиной, т.е. реализуется модель с переменным временем обслуживания. Поведение вычислительной системы во времени может быть описано на основе исследования марковского процесса. Тогда удается оценить характеристики си-темы массового обслуживания аналитическим путем.

Состояние системы массового обслуживания в некоторый мо­мент времени t определяется числом находящихся в ней заявок N(t). N(t) - это случайная величина, во времени N(t) отображает случайный процесс с дискретными состояниями. Положим, что система находится в состоянии k, если в ней имеется k заявок. Вероятность такого состояния обозначим Pk(t)=P[N(t)=k]. Для любого момента времени tSkPk(t)=1. Переход из состояния i в состояние j опишем с помощью вероятности Pij(t1, t2), если в момент t1 система находилась в состоянии i, а к моменту t2 переходит в состояние j. При t1 - t2 = Dt и Dt®0: Pij(Dt) » fij Dt, где fij = lim|Dt®0[Pij(Dt)/Dt] - плотность вероятности перехода. Рассмотрим последовательность переходов системы из состояния в состояние, пользуясь понятием марковской цепи. Выберем интервал U в пределах t1 < U< t2:

Тогда Pij(t1, t2)=Sr=0N Pir(t1, U) Prj(U, t2), 0£ i, j£ N,

где N - максимальное число заявок в системе. Полагая t1 = 0; U = t; t2 = t + t, t > 0, получим Pij(0,t+t) = Sr=0N Pir(0,t)Prj(t, t+t),

Можно составить систему таких уравнений для определения вероятностей Pk(t).

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

Экспоненциальный закон времени обслуживания простейшего потока заявок. Простейшим называют стационарный ординарный поток без последействия. Обозначим параметр потока т.е. интенсивность заявок, через l: l=const. Простейший поток описывается распределением Пуассона, в соответствии с которым вероятность возникновения k заявок за время t составляет P(k, t)=(lt)k е-lt(k!)-1; где l - интенсивность потока заявок, т.е. количество заявок, поступающих за единицу времени. Среднее число заявок или математическое ожидание числа заявок за время t определяется как

M = Sk=0¥ k(lt)k е-lt(k!)-1= lt.

Соответственно дисперсия числа заявок за время t

D = Sk=0¥ k2P(k, t)-lt)2=lt.

Особенностью простейшего потока является то, что при объединении независимых простейших потоков с параметрами l1, l2 воз­никает суммарный простейший поток с параметром (l1+ l2). Это обстоятельство позволило широко применять простейший поток в прикладных исследованиях. Такая модель хорошо описывает многие потоки заявок вычислительных задач, которые возникают в реальных условиях эксплуатации.

Экспоненциальному закону распределения времени обслуживания соответствует плотность распределения вероятности b(t)= m е-mt, где m - интенсивность обслуживания: m=Тобс-1, здесь Тобс - среднее время обслуживания одной заявки. Для составления уравнений, описывающих поведение системы массового обслуживания, рассмотрим граф переходов цепи Маркова для данной модели. Отсутствие заявок соответствует узлу 0, максимальное число заявок отображается узлом N. На дугах графа указаны плотности вероятности перехода системы из одного состояния в другое. При анализе процесса обработки необходимо установить вероятности состояний Pk(t), для этого необходимо составить N+1 линейных дифференциальных уравне­ний с постоянными коэффициентами. Структура уравнений одинакова: левая часть представляет собой производную вероятности состояния, а правая - включает члены, равные произведению плотности вероятности перехода на вероятность того состояния, из которого совершается переход. Число членов в правой части соответствует числу стрелок, входящих и исходящих из рассматрива­емого состояния. Члены, соответствующие исходящим стрелкам, берутся со знаком минус, а соответствующие входящим - со знаком плюс. В общем виде уравнение, описывающее k - e состояние системы, может быть представлено как

dPk(t)/dt = - Sj=0N fkj Pk(t)+ Si=0N fkj Pi(t).

В соответствии с рассмотренным графом для однолинейной системы обслуживания с очередью получаем следующую систему дифференциальных уравнений:

dP0(t)/dt= -lP0(t)+mP1(t);

...

dPk(t)/dt= -(l+m)Pk(t)+lPk-1(t)+mPk+1(t); k=1, ..., N;

...

dPN(t)/dt= -mPN(t)+lPN-1(t).

Условие нормировки вероятностей имеет вид Sk=0N Pk(t) = 1.

Для стационарного режима рассмотренная система дифференци­альных уравнений превращается в систему алгебраических уравне­ний вида:

0 = -lP0(t)+mP1(t);

...

0 = -(l+m)Pk(t)+lPk-1(t)+mPk+1(t); k=1, ..., N;

...

0 = -mPN(t)+lPN-1(t).

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

P0(t)=(1-r)(1-r N+1)-1; r=l/m.

Вероятность существования в системе k заявок, из которых одна обслуживается ЭВМ, а остальные находятся в очереди, составит

Pk(t)=(1-r) r k (1-r N+1)-1; 0 £ k £ N.

При k>N вероятность k-го состояния Pk =0. Это соответствует случаю переполнения системы, т.е. в очереди имеется N-1 заявок и одна заявка обслуживается ЭВМ. Таким образом, при полной загрузке системы, т.е. наличии в ней N заявок, вновь поступившее требование получает отказ. Поэтому полезно перейти к многолинейному обслуживанию, когда используется N обслужи­вающих приборов (ЭВМ).

Экспоненциальный закон времени обслуживания с по­терями простейшего потока заявок при S обслуживаю­щих приборов. В этом варианте вычислительная система не имеет возможности хранить очередь, поэтому заявки непосредственно через диспетчера Д2 поступают на одну из S ЭВМ. Число заявок не может превышать S, поэтому в случае загрузки всех ЭВМ вновь поступающее требование теряется, так как очередь не предусмот­рена, а на обслуживание оно не может быть принято. На графе перехо­дов S обслуживающей системы в узлах 0, ..., S - по числу заявок в системе, и дуги размечены плотностями вероятностей переходов из одного состояния в другое. Исходя из этого графа, для установившегося режима запишем алгебраическую систему уравнений в виде:

0 = -lP0(t)+mP1(t);

...

0 = -(l+ km)Pk(t)+lPk-1(t)+ (k+1)mPk+1(t); k=1, ..., S;

...

0 = - SmPS(t)+lPS-1(t).

Условие нормировки вероятностей имеет вид Sk=0S Pk(t) = 1. Решая данную систему уравнений, найдем вероятность пребывания вычис­лительной системы в k - м состоянии:

Pk = (rk(k!) -1)[Sj=1S rj(j!) -1]-1; k = 0, ... , S.

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

Pпот = PS = (rS(S!) -1)[Sj=1S rj(j!) -1]-1.

Выражение для вероятности Pk известно в литературе как фор­мула потерь Эрланга. Вероятность отсутствия заявок в системе P0=[Sj rj(j!) -1]-1.

Отметим, что вероятность потери заявки может быть умень­шена за счет увеличения интенсивности обслуживания m и числа обслуживающих приборов S.

Для любой системы весьма важным показателем является загрузка r=l/m, которая показывает среднее число заявок, поступающих в вычислительную систему за среднее время об­служивания одной заявки одной ЭВМ. Стационарный режим имеет место в системе, если r £ S. Наиболее распространенным вариантом реализации вычислительной системы является многолинейное обслуживание с очередью, к рассмотрению которого и перейдем.

Экспоненциальный закон времени обслуживания про­стейшего потока заявок при S обслуживающих приборах. В этом варианте обслуживания вычислительная система включает S обслуживающих приборов (ЭВМ) и имеет очередь для поступа­ющих заявок с числом мест L. При наличии хотя бы одной свобод­ной ЭВМ поступившая заявка сразу принимается на обслуживание. Если все ЭВМ заняты, то она становится в очередь. Естественной дисциплиной обслуживания является FIFO. По числу заявок система может иметь состояния: 0, ..., S+L. В узлах графа, как и ранее, указаны состояния, дуги графа размечены плот­ностями вероятностей переходов. На основании представленного графа запишем алгебраическую систему уравнений оценки вероят­ностей состояний системы для установившегося режима:

0 = -lP0(t)+mP1(t);

...

0 = -(l+ km)Pk(t)+lPk-1(t)+ (k+1)mPk+1(t); k=1, ..., S;

...

0 = - (l+Sm)PS(t)+lPS-1(t)+ SmPS+1(t);

...

0 = -(l+ Sm)PS+n(t)+lPS+n-1(t)+ SmPS+n+1(t); n=1, ..., L-1;

...

0 = - PS+L(t)+lPS+L-1(t).

Условие нормировки вероятностей имеет вид Sk=0S Pk + Sn=1L PS+n = 1.

Решая систему уравнений, определим вероятность нахождения вычислительной системы в k - м состоянии Pk= P0 rk(k!)-1; k=0, ..., S.

Соответственно вероятность состояния (S+n): PS+n=PS(r/S)n(k!)-1; n=0,...,L.

Вероятность отсутствия заявок в вычислительной системе

Р0=[1+Sk=1S rk(k!)-1+ rS(S!)-1Sn=1L (r/S)n]-1.

Отказ в приеме на обслуживание заявки возникает в случае, когда заняты все ЭВМ и в очереди находится L заявок, т. е.

Pпот = PS+L = PS(r/S)L= rS+LSL(S!)-1[1+S k=1S rk(k!)-1+ rS(S!)-1Sn=1L (r/S)n]-1.

Вероятность потерь из-за отказа в обслуживании уменьшается с увеличением длины очереди и особенно сильно с увеличением числа обслуживающих приборов. При r/S < 1 наблюдается умень­шение вероятности потерь на несколько порядков, с приближением r/S к единице это снижение становится менее существенным и на­ходится в пределах одного порядка. Наличие очереди в системе позволяет снизить потери из-за отказа в обслуживании, но вызыва­ет необходимость ожидания заявки в очереди перед началом об­служивания.

Организация очереди в вычислительной системе требует знания ее средней длины. Установим эту величину из условия, что очередь возникает, когда заняты все обслуживающие приборы, и в системе имеет место количество заявок от S+1 до S+L. Поэтому ` l = Sk=S+1S+L kPk. Подставляя соответствующие значения вероятностей Pk, получим

` l = PS r [1-(r/S)L(S+1-r)]S-1(1-r/S)-1.

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

P[Тож > t] = Sr=0L(l/(Sm))rPS Sk=0r(Smt)ke-Smt (k!)-1.

В этом выражении первая сумма включает вероятности состоя­ний обслуживающей системы от S до S+L, а вторая сумма - веро­ятности обслуживания от 0 до r заявок с помощью S обслужива­ющих приборов за время t. Среднее время ожидания

`Tож= PS [1-(r/S)L(S+1-r)]S-1m-1(1-r/S) -2.

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

`T = `Tож + [1-(r/S)LPS]/m .

Из приведенных выше соотношений могут быть получены конеч­ные выражения для однолинейной системы с ограниченной очере­дью. Подставляя S = 1, находим

Pk =rk(1-r)(1-rL+2)-1; k=0, ... ,L-1.

Потери заявок возникают с вероятностью

Pпот = [1-rL+1] [1-rL+2]-1.

Соответственно среднее время пребывания заявки в вычисли­тельной системе составит

`T=[m(1-r)]-1-L rL[m(1-r)L]-1.

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