Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
68
Добавлен:
04.01.2020
Размер:
4.22 Mб
Скачать
  1. Базовые средства описания динамического поведения системы

Основным документом описания динамики системы на SDL/GR является диаграмма процесса.

Процесс является расширенной машиной с конечным числом состояний, определяющей динамическое поведение системы.

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

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

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

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

На SDL/GR определение процесса изображается с помощью диаграммы процесса. Диаграмма процесса состоит из следующих элементов:

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

  • заголовок процесса: ключевое слово PROCESS, за которым следует идентификатор числа экземпляров процессов и за ней спецификация формальных параметров. Заголовок процесса помещается в верхний левый угол кадра.

Спецификация числа экземпляров процесса задается парой целых чисел: первое число задает количество процессов, создаваемых при создании системы; если оно отсутствует, то по умолчанию его значение равно 1. Второе целое число специфицирует максимальное число экземпляров процесса, которые могут одновременно существовать; если оно отсутствует, то по умолчанию максимальное число не ограничено.

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

  • необязательная нумерация страниц (помещается в правый верхний уровень кадра).

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

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

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

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

  • определение импорта: спецификация идентификаторов переменных - определение таймера см. ниже, определение макрокоманд.

  • ссылки на процедуры: символ процедуры, содержащий имя процедуры.

  • диаграммы процедур: по одной на каждую процедуру, которая не задана ссылкой на нее.

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

  • диаграммы макрокоманд.

На рисунке 14 показан пример определения процесса на SDL/GR.

Рисунок 14 – Пример диаграммы процесса

Создание процесса

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

Символ запроса на создание процесса

Семантика

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

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

После этого создаваемый процесс начинается с интерпретации стартовой вершины графа создаваемого процесса.

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

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

Соседние файлы в папке ЯМСЭ