Научная статья на тему 'О построении активных моделей распределенных систем реального времени'

О построении активных моделей распределенных систем реального времени Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
598
84
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АКТИВНАЯ МОДЕЛЬ / ВИРТУАЛЬНАЯ МАШИНА МОДЕЛИРОВАНИЯ / МОДУЛЬ-ИМИТАТОР / БЛОК АДАПТАЦИИ МОДУЛЯ / ОПЕРАЦИОННЫЙ БЛОК / БЛОК ОПИСАТЕЛЕЙ СОСТОЯНИЙ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Погребной Владимир Кириллович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Погребной Владимир Кириллович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ON CONSTRUCTION OF ACTIVE MODELS OF REAL TIME DISTRIBUTED SYSTEMS

The approach to solve problems of decrease in labor input to construct an imitating model and its transformation is offered. Concepts of the system active model, virtual modeling machine, module-simulator and descriptors of conditions of its input and output positions are introduced. The definition offered and the original structure of the module-simulator including the adaptation block, operational block and the block of position condition descriptors is defined. A list of adjustments and functions implemented functions at designing of the adaptation block is developed. The definition of the module position descriptor conditions is given, as potential data carriers on feature space where the active model functions at its performance on the virtual machine. The functional structure of the active model is offered and stages of its construction are formulated.

Текст научной работы на тему «О построении активных моделей распределенных систем реального времени»

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

линейной и квадратичной форм. Приведенный демонстрационный пример подтверждает работоспособность метода. Применение описанной процедуры позволило снизить размерность задачи с 5 до 2.

СПИСОК ЛИТЕРАТУРЫ

1. Гилл Ф., Мюррей У., Райт М. Практическая оптимизация. -М.: Мир, 1985. - 509 с.

2. Цыганков А.А. Новые условия экстремума для гладких задач с ограничениями в форме равенств // Журнал вычислительной математики и математической физики. - 2001. - Т. 41. - № 10. - С. 1474-1481.

3. Вылегжанин О.Н., Шкатова Г.И. Сравнительная оценка двух методов выбора наилучших линейных регрессоров // Приме-

нение математических методов и ЭВМ в медико-биологических исследованиях: Межвузовский научно-технический сборник. - Томск: Изд-во ТПУ, 1988. - С. 18-22.

Поступила 14.04.2008 г.

Ключевые слова:

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

УДК 681.3.06

О ПОСТРОЕНИИ АКТИВНЫХ МОДЕЛЕЙ РАСПРЕДЕЛЕННЫХ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ

В.К. Погребной

Институт «Кибернетический центр» ТПУ E-mail: [email protected]

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

Введение

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

Известно, что имитационное моделирование является всеобъемлющим и универсальным методом анализа систем [1, 2]. Широкое применение получили также частные модели для анализа отдельных характеристик систем - такие как сети массового обслуживания для оценки производи-

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

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

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

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

В настоящей работе основное внимание уделено развитию, предложенной автором технологии модульного проектирования [3] для решения проблемы снижения затрат при трансформации моделей. Модульное проектирование основывается на трех принципах: дискретность модели, графовая форма представления и активность.

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

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

системы, представленная в форме программы для ВММ. Выполнение такой программы на ВММ соответствует функционированию системы в модельном представлении.

Определение и классификация модулей

Центральное место в построении активной модели занимает понятие модуля. В общем случае модуль рассматривается как имитатор автономной структурной компоненты моделируемой системы. В качестве компонентов принимаются как алгоритмы прикладных функций СРВ или их фрагменты, так и алгоритмы функционирования различных агрегатов или их узлов, составляющих технологическое оборудование системы. С целью создания условий для формализации выполнения действий по трансформации моделей разработана структура представления модуля, в которой описание всех функций, связанных с настройкой модуля на условия его применения в активной модели отделено от описания алгоритма функционирования модуля. Описание настроек при этом выполняется в форме понятной для ВММ, а алгоритм функционирования модуля представляется в виде программы на языке инструментальной ЭВМ. На рис. 1 приведена функциональная структура модуля.

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

• Операционный блок - это исполняющая часть модуля, которая содержит базовую программу реализации алгоритма, моделирующего работу соответствующего компонента системы;

• Блок адаптации - это настроечная часть модуля, включающая описатели параметров модуля и его входов и выходов для параметрической настройки, а также совокупность функциональных настроек модуля на условия применения в активной модели;

• Блок состояний - эта часть фиксирует значения (состояния) параметров входов и выходов модуля, отражая тем самым состояние соответ-

Блок адаптации

модуля:

Описатели

параметров и

функций

настройки

Операционный

блок:

базовое тело программы алгоритма функционирования модуля

О О ... о

Состояния входов

Блок состояний

Состояния выходов

О 0-0

Рис. 1. Структура модуля: а) функциональная структура; б) графическое представление

Входы

Выходы

ствующего компонента в текущий момент времени.

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

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

Модули группы F. В эту группу входят модули, реализующие алгоритмы прикладных функций СРВ. Обработка показаний датчиков, определение управляющих воздействий, реакция на все события, происходящие в системе, и выполнение других задач, предусмотренных в составе СРВ, имитируется модулями данной группы. Модули воспроизводят работу алгоритма в том варианте представления, которое сложилось у разработчика проекта к моменту моделирования. На начальных этапах эволюции модели возможна имитация алгоритмов, представленных в упрощенном варианте в соответствии с целями моделирования. Основным результатом работы модулей группы / являются управляющие воздействия либо промежуточные состояния данных, которые используются другими модулями для получения управляющих воздействий. Модули работают непосредственно в контуре управления СРВ и поэтому на время их выполнения накладываются жесткие ограничения.

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

Модули группы G. Данную группу составляют модули генерации моментов наступления событий. Модули формируют сигналы запуска других моду-

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

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

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

Все модули независимо от принадлежности к разным группам имеют одинаковую структуру, приведенную на рис. 1, а. Вместе с тем модули разных групп, имитируя соответствующие компоненты моделируемой системы, в первую очередь отличаются содержанием функций, выполняемых операционными блоками. Другим существенным основанием для различия модулей уже внутри групп являются проблемная ориентация систем. В первую очередь это относится к группе А, модули которой имитируют работу агрегатов системы, находящейся под управлением СРВ. Поэтому модули группы А для систем одной отрасли могут значительно отличаться от модулей этой же группы для систем другой отрасли. Различия по данному основанию характерны также и для модулей группы Д так как алгоритмы управления для систем с различной проблемной ориентацией могут существенно отличаться. Что касается модулей групп Н, О, Т, С, то они отражают общесистемные правила построения активных имитационных моделей и в значительной степени инвариантны относительно проблемной ориентации систем. Таким образом, для групп А и / целесообразно создавать библиотеки проблемно-ориентированных модулей, а по группам Н, О, Т, С могут использоваться библиотеки общие для систем из разных отраслей.

Блок описателей состояний

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

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

Графически модуль с входами и выходами будем изображать в форме, представленной на рис. 1, б. Такая форма была принята для изображения графа потока данных [3], представляющего модульную структуру имитационной модели. По аналогии с сетями Петри входы и выходы модуля будем именовать позициями, а действия операционного блока модуля по обработке входов и получению выходов - переходом.

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

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

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

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

Позиции группы Я. Позиции данной группы представляют ресурсы, которые могут пребывать в определенных состояниях: свободен, занят, неисправен, частично неисправен и т. п. Ресурс в этом случае может представлять некоторое устройство, которое используется при выполнении модуля, то есть является занятым, а после завершения выполнения модуля - свободным. В данной позиции возможно задание совокупности однородных ресурсов (устройств), то есть имеет место счетный ресурс. Если модуль занимает один из свободных ресурсов, то на время выполнения модуля счетчик состояния ресурса понижается на 1, а после освобождения ресурса счетчик увеличивается на 1. Вопросы синхронизации при использовании разделяемого ресурса выполняются также как и для позиций группы 0.

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

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

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

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

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

Состояния позиций в приведенных выше группах предполагает наличие большого разнообразия числовых и символьных атрибутов, которые задают область настроек модулей на условия их применения при построении активной модели. Совокупность описателей параметров модулей и состояний позиций составляют основную часть блока адаптации модуля (БАМ). Ниже излагаются основные сведения по структуре БАМ и состава функций настройки.

Блок адаптации модуля

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

Настройка параметров, указанных в пунктах 1-8 табл. 1, осуществляется при построении модульной структуры. Станция размещения (п. 9) и тип процессора (п. 10) определяются в результате решения задачи распределения переходов и позиций по станциям [3]. Системный номер, указанный в п. 7 соответствует переходу, число срабатываний которого контролируется счетчиком и по нему определяется кратность состояний выходной позиции модуля. В п. 8 указываются номера переходов, для которых назначено отношение приоритетности по доступу к позиции. В паспортных данных по

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

Таблица 1. Паспортные данные модуля и настраиваемые параметры

№ Паспортные данные Настраиваемые параметры

1 Имя модуля (группа) Системный номер перехода

2 Входы запуска Позиции с требованием на обработку

3 Информационные входы Системные номера входных позиций

4 Потребляемый ресурс Связь с позицией группы Q

5 Разделяемый ресурс Связь с позицией группы R

6 Выходы модуля Системные номера выходных позиций

7 Контролируемый модуль Номер контролируемого перехода

8 Относительные приоритеты модуля Перечень переходов и отношений

9 Требуемый объем памяти Станция размещения перехода

10 Время выполнения Тип процессора для выполнения перехода

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

• Настройка операторов в программе операционного блока;

• Замена и/или включение новых операторов в программу операционного блока;

• Включение дополнительных переходов и позиций, скрытых от пользователя.

Совокупность данных настроек с указанием их

вида и краткими пояснениями выполняемых при этом операций приведена в табл. 2.

В табл. 2 включены все основные настройки, которые могут инициироваться описателями состояний входных и выходных позиций модуля. Для конкретного модуля БАМ может включать лишь часть этих настроек или не включать их вовсе. В то же время настройки параметров, приведенные в табл. 1, присутствуют в БАМ для любого модуля, который включается в модульную структуру модели.

Таблица 2. Настройки операционного блока модуля

№ Цель настройки Описатели состояний Виды Комментарии

1 Селекция состояний Функция селекции 1, 2 Кратность состояний

2 Организация счетчика Параметры счета 3 Изменение модульной структуры

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3 Организация взаимного контроля Параметры взаимного контроля 2, 3 Изменение модульной структуры

4 Настройка на условия обновления Признаки обновления 1, 2 Возможна настройка и с целью (п. 2)

5 Восстановление исходного состояния Признаки восстановления 1, 2 Зависимость от группы входной позиции

6 Организация доступа к ресурсу Q Схема потребления ресурса 3 Необходимость контроля пополнения

7 Организация доступа к ресурсу R Схема разделения ресурса 3 Возможна настройка и с целью (п. 5)

8 Организация доступа к буферу В Метод доступа к буферу 3 Вид синхронизации

9 Организация доступа к области Z Метод доступа к области 3 Вид синхронизации

10 Настройка обработки прерывания Условия прерывания 2, 3 Необходимость более точного таймера

Построение активной модели

Исходными данными для построения модели является библиотека модулей, библиотека базовых вариантов ЛВС и ее компонентов, топологическое поле, на котором размещено оборудование объекта управления, алгоритмы прикладных функций СРВ и алгоритмы функционирования технологического оборудования. На основе этих данных разрабатывается модель ЛВС и модель алгоритма функционирования системы в целом.

На начальном этапе модель системы разрабатывается в форме модульной структуры и представляется совокупностью связанных между собой позиций и переходов (рис. 1, б) в форме графа потока данных (ГПД). Далее ГПД представляется совокупностью процессов реального времени [3] и на них отображаются решения по условиям функционирования системы. Сюда входят решения по условиям запуска процессов, их взаимодействия, обновления состояний выходных позиций, селекции, потребления ресурсов, приоритетности и другие решения. Отображение принятых условий производится в описателях состояний позиций и паспортных данных БАМ (табл. 1). После этого БАМ дополняется необходимыми настройками (табл. 2) и выполнением ряда настроек, связанных с работой ВММ.

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

Разработка ГПД и модели ЛВС (блоки 1 и 2) являются объектами технологии модульного проектирования на основе анализа размещения оборудования на топологическом поле системы и библиотеки базовых вариантов ЛВС. Описатели состояний позиций включаются в системный блок 3 после выполнения настроек. До этого паспортные данные по описателям входных и выходных позиций модуля наряду с его паспортными данными хранятся в БАМ. Для упрощения настроек при

Блоки адаптации ГПД модульной

модулей структуры

4

Операцион ные блоки модулей

Активная модель 1_

■<-

ОС

ВММ

ОЗУ

ВММ

3

Описатели состояний позиций системы

2

Модель

ЛВС

системы

Топологич еское поле

5

6

Библиотека

модулей

Библиотека базовых ЛВС

Рис. 2. Функциональная структура активной модели

проектировании БАМ (блок 5) важно, чтобы программа операционного блока (блок 4) была разработана с учетом дополнительных требований, предъявляемых правилами настройки. Выполнение настроек, связанных с работой ВММ (блок 6), включает определение адресов хранения компонентов модели в ОЗУ ВММ, учет требований к отображению результатов моделирования и ряд других настроек по подготовке активной модели к выполнению на ВММ.

Заключение

Основным результатом работы является новый подход к решению проблемы сокращения затрат при построении и трансформации имитационных моделей в составе технологии модульного проектирования распределенных СРВ. Основные предложения по данному подходу сводятся к следующему:

• Дано определение модулей-имитаторов и приведена их классификация. Предложена новая структура модуля-имитатора как основного компонента, для построения имитационной модели;

• Дано определение и приведена классификация описателей состояний позиций, как потенциальных носителей описания признакового

СПИСОК ЛИТЕРАТУРЫ

1. Альянах И.Н. Моделирование вычислительных систем. - Л.: Машиностроение. 1988. - 223 с.

2. Советов Б.Я. Моделирование систем. - М.: Высшая школа, 2001. - 343 с.

3. Погребной В.К. Системы реального времени. Моделирование и автоматизированное проектирование. - Томск.: Изд-во ТПУ, 2006. - 209 с.

пространства, в котором будет функционировать активная модель при выполнении ее на ВММ;

• Предложена структура БАМ с указанием перечня настроек и выполняемых ими функций;

• Предложена функциональная структура активной модели и содержательная постановка задач для ее построения.

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

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

Ключевые слова:

Активная модель, виртуальная машина моделирования, модуль-имитатор, блок адаптации модуля, операционный блок, блок описателей состояний.

Поступила 01.04.2008 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.