Теория экономических информационных систем - Мишенин А. И
..pdf•IDEF (Integrated Definition) - интегрированное опреде ление системы.
Применительно к процессам, реализуемым в ЭИС, модель должна иметь:
•описание последовательности процессов,
•указание входных и выходныхданных относительно каж дого процесса,
•фиксацию условий, при которых выполняется процесс,
•разделение процесса на составляющие его части (кото рые, в свою очередь, также являются процессами).
Основным элементом моделирования процесса является диаграмма. Диаграммы объединяются в иерархические струк туры, причем чем выше уровень диаграммы, тем менее она детализирована. В состав диаграммы входят блоки, изобража ющие допустимые действия в системе, и дуги, изображающие взаимосвязь действий.
Таким образом, мы приходим к следующему множеству понятий, необходимых для определения процессов:
•процесс;
•данные;
•использует;
•формирует;
•содержит;
•управляется;
•получены;
•предназначены для.
Пример Применим этот аппарат описания процессов и данных к сле
дующему примеру. Он представляет собой фрагмент последова тельности процессов в ЭИС и графически представлен на рис.5.2.
Описание процесса X выглядит следующим образом:
процесс X; использует Y1.Y2; формирует Y3, Y4, Y5; содержит XI,Х2; процесс XI;
221
использует Yl; формирует Y3,Y4,Y12; содержит XI1,XI2; процесс Х2; использует Y2.Y12; управляется Y4; формирует Y5; процесс XII; использует Y1; формирует Y3,Y4,Y11; процесс XI2; использует Y11; формирует Y12.
X
Y1 Х1
Y2 |
Х2 |
|
а
Х1
Y1
Х11 Y11
Х12
Y2
б
Y3
Y4
Y5
|
Y3, |
|
J |
|
Y4 |
Y12 w |
Yf> |
|
Х2 |
Рис. 5.2. Графическая иллюстрация процесса X: а - процесс X; б - детализация процесса X
222
Аналогичные описания могут быть получены для связей данных относительно процессов с использованием термина получены для процесса, который сформировал эти данные, и термина предназначены для, чтобы назвать процесс, который будет использовать эти данные. В нашем примере эти описа ния не приводятся, поскольку не указаны предшествующие и последующие процессы для процесса X.
Сети Петри
Для анализа взаимосвязей процессов целесообразно ис пользование сетей Петри.
Сети Петри первоначально были предназначены для опи сания взаимодействующих компонентов аппаратуры различ ного назначения, в частности вычислительных систем, однако впоследствии выяснилось, что они позволяют анализировать вычислительные процессы произвольной природы.
Сеть Петри состоит из четырех элементов: множества по зиций Р, множества переходов Т, входной функции I и выход ной функции О. Входная функция I отображает переход t в мно жество позиций I(t), называемых входными позициями перехода. Выходная функция О отображает переход t в множество пози ций O(t), называемых выходными позициями перехода.
Практически более удобно представление сети Петри в виде графа с двумя типами вершин - кружки на графе обозначают позиции, а планки - переходы. Дуги от кружков к планке t обеспечивают задание входной функции, а дуги от планки к кружкам - выходной функции.
Применительно к формализации процессов получаем сле дующие соответствия:
•планки соответствуют вычислительным процессам,
•кружки соответствуют данным, событиям и условиям. Если от кружка к планке проведена дуга, то кружок обо
значает входное данное, событие или условие для соответству ющего процесса. Если от планки к кружку проведена дуга, то кружок обозначает выходное данное, событие или условие.
223
Маркировка сети Петри представляет собой присвоение фишек позициям сети. Фишки являются метками позиций и на графе обозначаются точками внутри кружков. Количество фишек в каждой позиции может быть произвольным.
Процесс перераспределения фишек в сети называется вы полнением сети Петри. Фишки находятся в кружках и управ ляют запуском переходов в сети. Переход запускается удале нием фишек из всех его входных позиций и образованием новых фишек, помещаемых во все его выходные позиции.
Введем понятие вектора маркировки, в котором число эле ментов равно числу позиций в сети, а значением элемента яв ляется количество фишек в соответствующей позиции.
Одной из центральных аналитических задач для процес сов, описываемых сетью Петри, является задача определения достижимости маркировки, когда для исходного вектора мар кировки требуется установить существование последователь ности переходов, после выполнения которой достигается не который заданный выходной вектор маркировки.
Применительно к вычислительным процессам в ЭИС с по мощью анализа достижимости маркировки устанавливается последовательность действий, позволяющая получить требуе мые данные, условия или события.
Один из наиболее элементарных методов анализа дости жимости маркировки заключается в следующем. Структура сети Петри описывается двумя матрицами D' и D ", число строк в которых равно числу переходов в сети, а число столбцов равно числу позиций.
Матрица D' называется матрицей входов и содержит 1 на пересечении i-й строки и j-ro столбца, если j-я позиция является входной для i-ro перехода (в обратном случае элемент равен 0).
Матрица D " называется матрицей выходов и содержит 1 на пересечении i-й строки и j-ro столбца, если j-я позиция яв ляется выходной для i-ro перехода.
Вектор х называется вектором запуска переходов. Число элементов в х равно числу переходов, а значение каждого эле мента определяет количество запусков данного перехода в процессе выполнения сети Петри. Если исходный вектор мар-
224
кировки обозначить mO, а результирующую маркировку - че рез ml, то достижимость маркировки ml равнозначна суще ствованию вектора х с неотрицательными целыми элемента ми, который служит решением уравнения
ml =mO + x(D" - D ' ) .
Пример Рассмотрим фрагмент сети Петри на рис. 5.3. Исходная марки
ровка т0=( 1,1,0,0,0,0,0) соответствует наличию в системе двух кор ректно вычисленных файлов данных. Определим достижимость маркировки ml =(0,0,1,0,0,1,1) для файлов с результирующей ин-
|
1 |
1 0 |
0 |
0 |
0 |
0 |
|
D'= |
0 |
0 |
1 0 |
0 |
0 |
0 |
|
|
0 |
1 0 |
0 |
0 |
0 |
0 |
|
|
0 |
0 |
0 |
1 1 0 |
|
0 |
|
|
0 |
0 |
1 |
1 0 |
0 |
0 |
|
D"= |
0 |
0 |
0 |
0 |
0 |
1 0 |
|
0 |
0 |
0 |
0 |
1 0 |
0 |
||
|
0 |
0 |
0 |
0 |
0 |
1 |
1 |
формацией. Состояния матриц D' и D " показаны ниже. Решением уравнения служит вектор запуска х=(1,0,1,1). Это
означает, что требуемые выходные файлы можно получить в ре зультате выполнения процессов с номерами 1, 3, 4.
Следует отметить, что применяемый метод не позволяет определить взаимный порядок выполнения этих процессов.
Р1 |
I |
пз |
t2 |
Рис. 5.3. Анализ достижимости для сетей Петри
225
5.3
МОДЕЛИРОВАНИЕ ВЫЧИСЛИТЕЛЬНОЙ СИСТЕМЫ
Рассмотрение параметров вычислительной системы (ВС) позволяет анализировать производительность ЭВМ и ее от дельных устройств.
Чтобы количественно определить меру производительно сти, надо установить элементарную единицу работы для ВС. В режиме пакетной обработки данных единицей работы явля ется задание, которое пользователь представляет операцион ной системе как единое целое.
При интерактивной обработке единицей работы является взаимодействие, состоящее из двух частей - системной и тер минальной. Системная часть взаимодействия - это обработ ка команды, поданной пользователем с терминала. Терминаль ная часть соответствует действиям пользователя начиная от получения результата выполнения предыдущей команды до подачи следующей команды. Время терминальной части вза имодействия называется временем обдумывания.
Рабочей нагрузкой ВС называется совокупность поступаю щих на обработку программ, данных и терминальных команд за некоторый период времени. Обычно предполагается, что рабочая нагрузка нечувствительна к изменениям производи тельности вычислительной системы, однако ускорение выпол нения заданий и терминальных команд иногда вызывает их более частое применение пользователями.
Исходные данные для расчета производительности ВС и ее отдельных устройств получаются экспериментально с по мощью аппаратных или программных измерительных систем.
Параметры, которые обычно фиксируются программны ми измерителями, приводятся в табл. 5.1.
Расчет производительности работы вычислительной сис темы и ее отдельных устройств будем производить методами операционного анализа.
226
Т а б л и ц а 5.1. Эксплуатационные параметры ВС
Параметр |
Обозначение |
Количество выполненных заданий |
С |
Полезное время |
Т |
Время выполнения заданий |
В |
Время работы процессора |
В(1) |
Число обращений к магнитным дискам |
d |
Количество напечатанных строк |
л |
Число сеансов работы в диалоге |
m |
Суммарное время сеансов |
V |
Зафиксируем некоторый период наблюдений за ВС и обо значим его через Т. Время, в течение которого система обра батывала задания, обозначим через В(0) (В(0) <= Т), а количе ство обработанных заданий - через С(0). Индекс 0 описывает параметры вычислительной системы как единого целого. В ряде случаев он опускается, чтобы не усложнять формулы.
Определим основные параметры.
1.Коэффициент использования U(0) = В(0) /Т.
2.Среднее время выполнения одного задания S(0) = В(0) / С(0).
3.Интенсивность выходного потока заданий Х(0) = С(0) / Т. Величина X иначе называется пропускной способностью ВС
и часто принимается в качестве критерия производительнос ти ВС, который необходимо максимизировать.
Отметим очевидное соотношение Х(0) = U(0)/ S(0) и учтем возможность представления S(0) в виде
|
S(0) = Ft, |
где F - |
среднее количество команд в задании, |
t - |
время выполнения одной команды. |
Величина F зависит как от аппаратуры, так и от программ ного обеспечения, поэтому настройка ВС часто предполагает и изменение конфигурации ВС, и усовершенствование приме няемых программ.
227
Реальная ВС состоит из нескольких устройств, и задание в процессе выполнения захватывает в определенной последова тельности одно из них.
Для отдельных устройств целесообразно рассмотреть сле дующие величины:
C(i) - количество заданий, покинувших i-устройство за пе риод времени Т;
C(ij) - количество заданий, покинувших i-устройство и поступивших в j-устройство за период времени Т;
B(i) - время занятости i-устройства за период времени Т. Условимся о стандартных номерах устройств:
1 - центральный процессор,
2 - магнитный диск-сервер,
3 - принтер-сервер.
Окончание обработки задания системой будем рассматри вать как переход к нулевому устройству.
Принятые обозначения удобны для замкнутой системы, в которой каждое выполненное задание немедленно заменяется новым заданием с идентичными статистическими характери стиками.
Для отдельных устройств определяются коэффициент ис пользования U(i), среднее время занятости устройства зада нием S(i), интенсивность выходного потока заданий с устрой ства X(i) по формулам:
U(i) = B(i)/T, S(i) = B(i)/C(i), X(i) = C(i)/T = U(i)/S(i).
Введем дополнительные параметры устройств.
4. Вероятность перехода задания от устройства i к устрой ству j -q(i,j):
q(ij) = C(iJ)/C(i), Xq(iJ) =
Вероятности вида q(0,j) характеризуют поступление новых заданий. Обычно q(0,l) = 1, a q(0j) = 0 для j > 1. Практически всегда справедливо соотношение q(i,i) = 0.
5. Коэффициент посещения устройства i - V(i) V(i) = X(i)/X(0) = C(i)/C(0).
228
Из определения q(i,j) следует соотношение СО) = C(i)q(ij).
Делим обе части на Т и получаем XG) = EX(i)q(i,j).
После деления на Х(0) имеем с учетом V(0) = 1 V© = q(0j) + 2V(i)q(ij).
Данное уравнение имеет особенно простые решения, если лишь К из величин q(ij) находятся в интервале 0 < q(ij) < 1 (j > 1). Этому условию соответствуют, например, системы с одним цен тральным устройством (процессором), когда от остальных уст ройств возможен переход только к процессору. Второй важный случай - локальные вычислительные сети с одной ЭВМ-серве ром и соединением типа "звезда".
6. Среднее время ответа устройства i - R(i) R(i) = W(i)/C(i),
где W(i) - сумма времени ожидания и выполнения заданий.
Справедливы соотношения W(i) >= B(i) и R(i) >= S(i). Средняя длина очереди к устройству составляет n(i) = W(i)/T,
поэтому
R(i) = W(i)/C(i) = n(i)T/C(i) = n(i)/X(i).
Это равенство называется законом Литтла. Сумма сред них длин очередей к устройствам представляет собой коэффи циент мультипрограммирования N
N = Е n(i) = £W(i)/T = W/T,
где W - суммарное старт-стопное время выполнения заданий при усло вии, что период наблюдения Т не содержит простоев ВС.
Среднее время ответа вычислительной системы R(0) опре деляется как
R(0) = N/X(0) = Z n(i)/X(0) = £V(i)R(i).
229
Функциональные связи устройств ВС удобно описывать в виде графа с вершинами, которые обозначаются номерами устройств i = 1 ...К и дугами (ij) при условии, что q(ij) > 0. Мы детально рассмотрим два класса ВС, показанных на рис. 5.4. Они являются системами с центральным устройством, для ко торых уравнения для коэффициентов посещения преобразу ются к виду:
X(0) = X(l)q(l,0)
Х(1) = Х(0) + Х(2) + Х(3) +...+ Х(К) X(i) = X(l)q(l,i)
V(l) = l/q(l,0)
V(i) = q(l,i)/q(l,0)
3 |
q(1.3) |
q(1.2) |
i |
2 |
|
|
|
.0) |
|
i |
|
|
0 |
|
.i |
q(1.2) |
2 |
|
||
i |
q(1.0) |
|
|
|
|
0 |
M терминалов |
Рис. 5.4. Простейшие функциональные схемы ВС (обратные дуги с q (i, 1) = 1 не показаны):
а - система А. Центральный процессор с двумя каналами ввода-вывода и запуском заданий в пакетном режиме;
б - система В. Интерактивная нагрузка создается М-терминалами
230