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

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

CC BY
127
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОДУЛЬНЫЕ ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ / ПРОВЕРКА КОРРЕКТНОСТИ РАСПИСАНИЙ / ВРЕМЕННЫЕ АВТОМАТЫ / СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ / MODULAR COMPUTER SYSTEMS / SCHEDULABILITY ANALYSIS / STOPWATCH AUTOMATA / SIMULATION / REAL-TIME SYSTEMS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Глонина Алевтина Борисовна

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

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

GENERAL MODEL OF REAL-TIME MODULAR COMPUTER SYSTEMS OPERATION FOR CHECKING ACCEPTABILITY OF SUCH SYSTEMS CONFIGURATIONS

In this paper, we consider schedulability analysis problem for real-time modular computer systems (RT MCS). A system configuration is called schedulable if all the jobs complete within their deadlines. The paper contains formal definitions of a system configuration and a system operation trace which is necessary for checking the schedulability criterion. The author proposes a stopwatch automata-based general model of RT MCS operation. A model instance for a given RT MCS configuration is a network of stopwatch automata and it can be built automatically using the general model. A system operation trace can be obtained from the corresponding NSA trace. The stopwatch automata formalism allowed us to prove that the model is deterministic and satisfies a set of correctness requirements derived from RT MCS specifications. We implemented our approach in software and compared it experimentally with Model Checking approach, which uses the same formalism. The results of the experiments confirm that our approach is much more efficient. The software implementation is also integrated with the existing industrial RT MCS scheduling tool. These experiments showed the applicability of the proposed approach to real scale systems.

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

Информатика, вычислительная техника и управление

УДК 519.687, 004.41 DOI: 10.14529/cmsel70404

ОБОБЩЕННАЯ МОДЕЛЬ ФУНКЦИОНИРОВАНИЯ МОДУЛЬНЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ ДЛЯ ПРОВЕРКИ ДОПУСТИМОСТИ КОНФИГУРАЦИЙ ТАКИХ СИСТЕМ*

(с) 2017 А.Б. Глонина

Московский государственный университет имени М.В. Ломоносова (119991 Москва, ул. Ленинские горы, д. 1)

E-mail: alevtina@lvk,cs.rnsu.su Поступила в редакцию: 06.09.2017

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

Ключевые слова: модульные вычислительные системы, проверка корректности расписаний, временные детожаты, системы реального времени

ОБРАЗЕЦ ЦИТИРОВАНИЯ

Глонина А.Б. Обобщенная модель функционирования модульных вычислительных систем реального времени для проверки допустимости конфигураций таких систем / / Вестник ЮУрГУ. Серия: Вычислительная математика и информатика. 2017. Т. 6, № 4. С. 43-59. DOI: 10.14529/cmsel70404.

Введение

В настоящее время наиболее перспективным типом архитектуры встроенных вычислительных систем является модульная архитектура. Современные модульные вычислительные системы реального времени (МВС РВ) состоят из большого количества параллельно работающих вычислительных модулей. Так автомобили премиум-класса имеют вычислительные системы архитектуры AUTOSAR, состоящие из 10-20 вычислительных модулей, содержащие в общей сложности около 100 вычислительных ядер, на которых выполняются около 800 приложений [1J. Другим примером МВС РВ

“Статья рекомендована к публикации программным комитетом Международной конференции « Су ггер компьютерные дни в России — 2017*.

являются системы интегрированной модульной авионики (ИМА), которые могут состоять из десятков модулей. На каждом модуле выполняются сотни задач, обрабатывающих большие объемы информации. Например, на борту Boeing 787 генерируется около 0,5 ТБ данных за полет, и ожидается, что на борту Airbus А350 за полет будет генерироваться около 1 ТБ данных [2]. В данной работе МВС РВ будут рассматриваться па примере систем ИМА, однако предложенные методы применимы и к другим МВС РВ.

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

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

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

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

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

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

Другим подходом к проверке допустимости конфигураций является построение временной диаграммы (ВД) функционирования МВС, то есть моделирование функционирования системы, в процессе которого определяются моменты постановки каждой работы на выполнение и снятия ее с вычислительного ядра. Существующие средства построения ВД функционирования вычислительных систем обладают рядом недостатков: некоторые из них не поддерживают всех особенностей МВС РВ [5, 6],

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

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

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

Статья имеет следующую структуру. В разделе 1 формализовано понятие конфигурации МВС РВ и критерия ее допустимости. В разделе 2 описаны сети временных автоматов с остановкой таймеров. В разделе 3 приведена обобщенная формальная модель функционирования МВС РВ. В разделе 4 представлен алгоритм построения моделей конкретных МВС на основе обобщенной модели. Раздел 5 посвящен обоснованию корректности и детерминированности моделей. В разделе б описана программная реализация и апробация предложенных методов. В заключении сформулированы итоги работы.

1. Формальное описание МВС РВ

Конфигурация МВС РВ имеет вид {HW, WL, Bind, Sched), где:

• HW = — множество вычислительных ядер; Туре : HW -л 1,ЛГ* — тип

процессора, которому принадлежит ядро (Nf 6 N — количество типов процессоров); считается, что в каждом процессоре все ядра одинаковы;

• WL =< Part, G > — рабочая нагрузка, где:

— Part — {Parti — {Tj, — множество разделов, где:

* Л/ Е N — количество разделов;

* К, £ N — количество задач в г-ом разделе;

* Тг = \Tijj .^1 — множество задач г-ro раздела, каждая из которых характеризуется уникальным в рамках раздела приоритетом (рг^), временем выполнения в худшем случае (WCET) па разных типах процессоров (Сгз = (С'А,Cj')), периодом [Ргз) и директивным сроком {Ог] < Рг});

* А\ — тип алгоритма планирования;

— G = {Msg^Yj-i) ~ ациклический направленный граф зависимостей

по данным, вершины которого соответствуют задачам, а дуги — сообщениям; каждое сообщение Msgj характеризуется максимальными длительностями передачи через память модуля и через сеть {DMj и DNj соответственно);

• Bind : Part —¥ HW — привязка разделов к ядрам;

• Sched — {{{Starts, Stopif) }г=1 — расписание окон разделов, заданное на

интервале планирования L, где L равно наименьшему общему кратному всех Я(7; N™ £ N — количество окоп для г-го раздела; Starts, Stopij £ О, L — времена начала и завершения у-го окна г-го раздела.

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

Далее введем понятие временной диаграммы (ВД) функционирования МВС РВ.

Для каждой задачи Ту на интервале планирования определен набор работ И-'Д — Dijk — Pij * (к — 1) + D,j — директивный срок А:-й работы.

Пусть е = {Type,Src,t} — событие, где Туре £ {EX,PR, FIN} — тип события:

постановка работы па выполнение (ЯХ); вытеснение работы с ядра {РВ}', завершение

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

(FIN). Src £ U U Wij — работа-источник события, t £ {п}^=1 — время.

* з

Е = {EX,PR, FIN} х U U Wij х {п}^=1 — множество всевозможных событий.

i з

А = А^,..., Ам — совокупность алгоритмов планирования, используемых в разделах.

На практике |9, 11J при проектировании МВС РВ предполагают, что время выполнения каждой работы на соответствующем ядре фиксировано и равно наихудшему, время передачи каждого сообщения также фиксировано и равно наихудшему, а алгоритм планирования детерминирован. В таких предположениях совокупность алгоритмов планирования А однозначно определяет отображение Q : CONF —> 2е.

ВД для конфигурации conf £ CONF — подмножество множества Е, однозначно соответствующее conf, и являющееся результатом интерпретации А па conf.

Пусть conf £ CONF — некоторая конфигурация системы, a Q(conf) — ВД, соответствующая conf. Пусть R{jk - количество интервалов выполнения работы Тогда упорядоченный набор событий для гщ,-*, имеет вид:

• 0, если = 0 (работа не была поставлена па выполнение);

• {(wijk, EX, to), {yJijk, Я/ЛГ, ti)} C Q(conf), если Я,щ = 1 (работа была поставлена па выполнение в момент to, пи разу не вытеснялась и завершилась в момент П);

• { EX, to), PR: tl ), ..., EX, 2)) FIN, t2Rijk—l) } ^== Q(conf), если Rijk > 1, (работа была поставлена на выполнение в момент to, несколько раз вытеснялась и завершилась в момент t^J?;j*,—i) -

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

CR(conf) : Vujjjfc,* £ 1 ,M,j £ 1 Д<йк £ ХД/Pif Rljk > 1 и

ERijki, ± \ r,Type{Bind(PaTU))

т-=1 \*2г—1 t2r—2) F-j

В работе решается задача построения отображения Q : CONF -д 2е , позволяющего для данной конфигурации МВС РВ получить ВД ее функционирования, необходимую для проверки критерия CR допустимости конфигурации. Для построения искомого отображения Q будем строить модель функционирования МВС РВ.

2. Сети временных автоматов с остановкой таймеров

К математическому аппарату для построения модели функционирования МВС РВ были сформулированы следующие требования: 1) возможность получения ВД для заданной

конфигурации; 2) возможность формализации и проверки выполнения требований корректности к модели; 3) наличие программных средств для моделирования и проверки выполнения требований.

Автором был рассмотрен ряд математических аппаратов [10, 12-18] и из них были выбраны сети временных автоматов с остановкой таймеров [10], так как они в наибольшей степени удовлетворяют перечисленным требованиям.

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

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

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

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

Состояние автомата может измениться не только в результате выполнения перехода, но и в результате синхронного увеличения значений всех таймеров. Значения всех таймеров, кроме остановленных, могут быть увеличены на некоторую вещественную величину d, если \/Ф : 0 < d' < d значения таймеров, увеличенные на Ф, удовлетворяют инварианту текущей локации. В некоторых локациях, называемых срочными, продвижение времени невозможно.

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

Капал — средство синхронизации автоматов. Синхронизация характеризуется именем канала и действием. Существует два парных действия: отправка и прием сигнала по каналу. Также существует два типа каналов — «точка-точка» и широковещательные. Если в некоторый момент времени в двух автоматах сети активны переходы с партиями действиями

синхронизации по одному и тому же каналу «точка-точка», то эти переходы выполняются одновременно. N + 1 автомат могут синхронизироваться посредством широковещательного канала, если в одном автомате активен переход с отправкой сигнала по этому каналу, а в остальных N— с приемом сигнала.

Формально автомат — это кортеж А — (L, U, la, С, V, щ, АА, AS, Е, I, Р), где:

• L,U С L, Р € L — множества локаций и срочных локаций, начальная локация;

• С — множество таймеров;

• V, Щ — множество переменных и их начальные значения;

• АА, AS — множество действий над таймерами и переменными и множество си т гхронизаций;

• Е — множество переходов, £CLx В (С, V) х .45' х А А х L. B(C,V) — множество всевозможных условий над С и V;

• I : L —> В (С, V) — назначение инвариантов;

• P:(LxC)-> В(0, V) — назначение условий активности таймеров.

Пусть А = Ai,...,An — сеть автоматов, где At = (Lt, 11г, I", Сг, V,, , AUt, А Зг, Ег, 1г,

Pi). Состоянием сети называется кортеж (J,c,v) € (L\ х ... х Ln) х х где

П П ~

V = U Vi, С = U Сг. Конечная или бесконечная последовательность состояний, получаемая

г=1 7=1

при некотором сценарии функционирования сети автоматов, называется вычислением этой сети.

3. Обобщенная формальная модель функционирования МВС РВ

Введем ряд определений, необходимых для описания предложенной модели.

Параметризованпый автомат с остановкой таймеров, или конкретный тип автоматов — кортеж (L, U, /о, С, V, р, AU, AS, Е, I, Р), где р — целочисленные параметры с не заданными значениями. Интерфейс автомата — набор переменных и синхронизаций, посредством которых автомат взаимодействует с другими автоматами. Базовый тип автоматов определяется интерфейсом, то есть парой (Vi„AS^), где V/, — множество переменных, AS^ — множество синхронизаций. Конкретный тип автоматов реализует базовый тип, если VJ, С V, ASb С AS.

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

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

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

Автором предложено представление обобщенной модели функционирования МВС РВ в виде введенной выше обобщенной сети автоматов с остановкой таймеров.

В разработанной обобщенной сети имеются следующие средства взаимодействия автоматов (см. обозначения, введенные в разделе 1):

• переменные is.ready^, is_failed;j, i £ l,A/,j £ 1, AT;, is_data_readyh, h £ 1 , #, соответствующие готовности опозданию работы задачи T{j и доставке сообщения по h-му виртуальному каналу;

• переменные prio^, deadline^, i £ 1, М,j £ 1, Аф значения которых равтгы

приоритету и директивному сроку задачи и не изменяются в процессе

функционирования сети;

• каналы wakeup^, sleep^, i £ 1, М, соответствующие началу и завершению очередного окна г-го раздела;

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

• каналы ready,, finished,;, ехесч-, preempt^- г £ 1,А/, j £ 1, А,, соответствующие готовности, завершению (вследствие окончания выполнения, либо наступления директивного срока), постановке па выполнение и вытеснению некоторой работы;

• широковещательные каналы send,j, receive^, i £ 1, М, j £ 1, Kt,

соответствующие отправке сообщения работой-отправителем и получению сообщения р аботой- п о л у чат ел ем.

Обобщенная сеть автоматов состоит из следующих базовых типов автоматов.

1. Базовый тип автоматов Т, моделирующий функциональную задачу и определенный следующим интерфейсом:

• получение сигналов по каналам ехес и preempt и отправка сигналов по каналам ready и finished;

• отправка сигналов по широковещательному каналу send и получение сигналов по широковещательному каналу receive;

• изменение переменных is_ready, is_failed и is_data_readyft, где h — помер виртуального капала, по которому работы данной задачи получают сообщения.

2. Базовый тип автоматов TS, моделирующий планировщик работ раздела и определенный следующим интерфейсом:

• получение сигналов по каналам wakeup, sleep, ready и finished;

• отправка сигналов по каналам execy, preempt^-, где j-й канал соответствует у-й задаче раздела;

• чтение значений переменных is_readyJ5 priOj, deadline^.

3. Базовый тип автоматов CS, моделирующий планировщик ядра. Планировщик ядра переключает окна разделов согласно статическому расписанию, являющемуся элементом конфигурации МВС РВ. CS определен следующим интерфейсом:

• отправка сигналов по каналам wakeup, и sleep^, где у-й канал соответствует у-му разделу;

4. Базовый тип автоматов L, моделирующий виртуальный канал и определенный следующим интерфейсом:

• получение сигналов по широковещательному каналу send и отправка сигналов по широковещательному каналу receive;

• изменение переменной is_data_ready.

Структура предложенной обобщенной сети автоматов, отражающая логические связи между' ее компонентами, показана на рис. 1.

Рис. 1. Структура обобщенной сети автоматов, моделирующей функционирование МВС РВ

4. Проверка допустимости конфигураций конкретных МВС РВ

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

Для данной конкретной сети автоматов и конфигурации МВС РВ conf G CONF экземпляр сети автоматов, моделирующий функционирование системы, может быть построен согласно следующему алгоритму:

• цикл по ядрам (г € [ 1, ЛГ]):

— цикл по разделам ядра (j € [1, М] : Bind(Partj) — НИ)-):

* создание каналов ready^, finishedj, wakeup^, sleep^;

* цикл по задачам (к t [1, Kf):

— создание каналов ехес^&, preempt^., sendj^,, receive^;

— создание переменных is.ready^, priojk, deadline^ и их инициализация соответствующими значениями из conf;

— создание переменных is_data_ready/l, соответствующих виртуальным каналам, для которых задача ТД является получателем, и инициализация их значением 0;

— порождение автомата конкретного типа, реализующего базовый тип Т (моделирующего задачу), инициализация его интерфейса каналами ехесщ, preempt^, sendp., receive^, ready^, finishedj и переменными is_ready^., prio deadline,^, is_data_ready/( и инициализация его параметров соответствующими значениями из conf;

* порождение автомата конкретного типа, реализующего базовый тип TS (моделирующего планировщик работ) и соответствующего алгоритму планирования Aj j-го раздела, инициализация его интерфейса каналами exeCj-fc, preempt^, ready^, finishedj, wakeupj, sleep^- и переменными is_readyjfc, priOj*., deadline^-*, (к £ [1,/£Д]);

- порождение автомата конкретного типа, реализующего базовый тип CS (моделирующего планировщик ядра), инициализация его интерфейса каналами wakeupj , sleepy и инициализация его параметров соответствующими значениями из Sched (j G [1, М] : Bind(Partj) = Я14Д;

• цикл по виртуальным каналам (/),£ [1,#]}:

— порождение автомата конкретного типа, реализующего базовый тип L (моделирующего виртуальный канал), инициализация его интерфейса соответствующими каналами send^, receive^, и переменной is_data_readyft и инициализация его параметров соответствующими значениями из conf.

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

По ВД сети автоматов, построенной для некоторой конфигурации, может быть получена ВД МВС РВ, необходимая для проверки критерия допустимости данной конфигурации. Каждому событию синхронизации (CH(ASsync), Async, tsync) из ВД сети автоматов, такому что CH{AS3ytlc) £ {ехесщ, preempt^, finished-,} однозначно ставится в соответствие событие {Type, Src,t) ВД МВС РВ по следующим правилам:

• тип события (ЕХ, РВ,, FIN) соответствует каналу (ехесц., preempt^., finished,);

• работа-и стон i гик события определяется автоматом-моделыо задачи, участвующим в

синхронизации, и временем синхронизации: Src — где i,j : Alsync — Tij, к —

[tsync/P,j\ + 1 (для EX и PR) и к = \tsync/Pij) (для FIN);

• время события равно времени синхронизации: t = tsync-

5. Корректность и детерминированность модели

В данном разделе приведен подход к доказательству корректности и детерминированности всех моделей, построенных па основе предложенной обобщенной модели.

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

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

Выбранный математический аппарат моделирования позволяет проверять выполнение требований к компонентам модели автоматически с помощью верификатора. Для этого используется подход «автоматов-паблгадателей» [19].

«Автомат-наблюдатель» — это автомат, работающий синхронно с исходным автоматом, и соответствующий, как правило, одному требованию из спецификации МВС. У автомата-наблюдателя существует «плохая» локация, соответствующая некорректным последовательностям синхронизаций в исходном автомате. Во всех локациях «наблюдателя» активны переходы с действиями синхронизации, парными ко всем возможным действиям синхронизации исходного автомата. Достижимость «плохой» локации означает, что в исходном автомате может произойти некорректная последовательность синхронизаций, соответствующая некорректной последователь!гости событий в МВС РВ.

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

Для проверки корректности компонента параметризованной модели необходимо выделить из спецификаций МВС РВ применимые к нему на выбранном уровне абстракции требования, для каждого из них построить «автомат-наблюдатель» и проверить недостижимость его «плохой» локации. Такая проверка была выполнена автором для всех разработанных конкретных типов автоматов и требований, выделенных из стандарта ARINC653 [20J на системы ИМА. Проверка проводилась с использованием верификатора UPPAAL [13|.

Рассмотрим следующий пример требования:

Для любого раздела системы верно, что в каждый момент времени в нем выполняется не более одной работы.

Это требование относится к базовому типу автоматов TS, моделирующему планировщик работ, и должно быть выполнено для всех конкретных типов автоматов, реализующих TS.

В терминах синхронизаций автоматов выполнением работ задачи являются интервалы между' синхронизациями по каналам ехесц, и либо preempt^, либо finished,. Сформулированное требование означает, что за любой синхронизацией по каналу exec,* должна следовать синхронизация по либо по каналу preempt^, либо по каналу f inishedj. «Автомат-наблюдатель», соответствующий данному требованию, приведен на рис. 2.

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

Рассмотрим пример требования корректности к модели в целом и его доказательство:

Для любого ядра системы верно, что в каждый момент времени на нем выполняется не более одной работы.

П : int [1, MAX ТА5К5 N data.numOfTasks = п

i == data.numOfTasks

п: int[0, MAX_TASKS_NUM-1] n «data.numOfTasks prEEmpt[n]?

, i < data.numOfTasks

i=i+l

©prio: int[l, MAX TA5K5 NUMVCX chEckprio(prio) ~~ *4,/

data.tasks[i],prio = prio

d: int [1. MAX_PERIOD! data.tasks[i].deadlines

n: int[0,MAX_TASKS_NUM-l] n<data.numOfTasks is ready[n]=l finished]

preem pt[i]?

4>

n: int[0,MAX TASKS NUM-lj.

n «data.numOfTasks exeejn]?__________

n: int[0,MAX_TASKS_NUM-l n<data.numOfTasks is_ready[n]=l

wakeup!

n: int[0,MAX_TASKS_NUM-l] n < data.numOfTasks && n != i preem pt[n]7

f

ERROR

Рис. 2. Автомат-наблюдатель для требования к модели планировщика работ

Выполнение следующих требований к компонентам модели было автоматически доказано с использованием соответствующих «авто м ато в-т габ л год ат еле й »:

1. Для любого раздела системы верно, что в каждый момент времени в нем выполняется не более одной работы.

2. Для любого ядра системы верно, что в каждый момент времени на нем выполняется не более одного раздела.

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

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

Предположим, что модель не является детерминированной, то есть для экземпляра сети автоматов, соответствующей некоторой конфигурации, могут быть получены две разные ВД. Упорядочим события этих двух ВД по времени. Так как события в системе могут происходить одновременно, то к каждой временной точке ВД привязано некоторое множество событий. Пусть tt — точка с наименьшим модельным временем, для которой множества событий двух ВД различаются. Это означает, что как минимум одно событие синхронизации присутствует в множестве событий для этой точки одной трассы и отсутствует в соответствующем множестве другой. Предположим, что это синхронизация по каналу finished^. Так как для всех предыдущих временных точек множества событий совпадают, то возможно два варианта:

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

2. Согласно трассе, содержащей данное событие, некоторая работа была снята с ядра по причине наступления ее директивного срока. Из этого следует, что согласно второй трассе, в которой данного события нет, эта работа осталась па ядре после наступления ее директивного срока.

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

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

6. Программная реализация и апробация

Для апробации предложенного подхода автором была создана программная реализация разработанных моделей и методов.

Конкретные типы автоматов, моделирующие компоненты системы, были разработаны и верифицированы с использованием средства UPPAAL [13J. Проверифициропанпые автоматы были помещены в библиотеку автоматных моделей компонентов МВС РВ. При необходимости библиотека может быть пополнена пользовательскими моделями при условии выполнения для них требований корректности.

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

Автоматная

модель

компонента

Библиотека моделирования сетей автоматов с остановкой таймеров

Библиотека программных Моделей компонентов

араметризованная программная модель системы

Рис. 3. Формирование параметризованной модели функционирования МВС

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

автоматов ни одна из переменных is_failed не принимает значение 1. Результаты сравнения времени проверки допустимости конфигурации с использованием ВД с

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

Таблица

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

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

Количество работ 10 11 12 13 14 15 16 17 18

Верификация 0,57 1,16 2,22 5,05 10,43 23,51 48,13 112,28 215,91

Использование ВД 0,027 0,027 0,028 0,030 0,031 0,032 0,033 0,035 0,036

Разработанная модель была интегрирована с САПР ИМ А, решающей одну из задач планирования вычислений [9]. На каждой итерации работы алгоритма планирования формируется конфигурация, для которой необходимо проверить критерий допустимости. Для конфигурации генерируется XML-файл с ее описанием и передается на вход параметризованной модели. По этому описанию строится и запускается экземпляр модели. В результате его выполнения генерируется ВД и в виде XML-файла передается в САПР ИМА, где производится проверка критерия допустимости. Эксперименты показали, что па данных, приближенных к реальным, генерация и прогон модели занимают несколько секунд (11 секунд для конфигурации с 12500 работами на интервале планирования), что свидетельствует о применимости предложенного подхода на практике.

Заключение

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

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

Ра,бота, выполнена при финансовой поддержке РФФИ (грант 17-07-01566 А).

Литература

1. Seiithilkumar К., Rainadoss R. Designing Multicore ECU Architecture in Vehicle Networks Using AUTOSAR // Proceedings of the Third Internationa] Conference on Advanced Computing (ICoAC) (Chennai, India, December 14-16, 2011), 2011. P. 270-275. DOI: 10.1109/ICoAC.2011.6165187

2. From the Ground Up: How the Internet of Things Will Give Rise to Connected Aviation. Gogo LLC, 2016. 140 p.

3. Marinescu S., Tanias-Selicean D., Acretoaie V., et al. Timing Analysis of Mixed-Criticality Hai'd Real-Time Applications Implemented on Distributed Partitioned Architectures // Proceedings of the 17th IEEE International Conference on Emerging Technologies arid Factory Automation (ETFA) (Krakow, Poland, September 17-21, 2012), 2012. P. 1-4. DOI: 10.1109/ETFA.2012.6489720

4. Macariu G., Cretu V. Timed Automata Model For Component-Based Real-Time Systems // Proceedings of the 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems (ECBS) (Oxford, UK, March 22-26, 2010), 2010. P. 121-130. DOI: 10.1109/ECBS.2010.20

5. Craveiro J.P., Silveira R.O., Rufino J. HsSim: an Extensible Interoperable Object-Oriented n-Level Hierarchical Scheduling Simulator // Proceedings of the 3rd International Workshop on Analysis Tools and Methodologies for Embedded and Real-time Systems (WATERS) (Pisa, Italy, July 10, 2012), 2012. P. 9-14.

6. Singhoff F., Plantec A., Dissaux P., et ah Investigating the Usability of Real-Time Scheduling Theory with the Cheddar Project // Real-Time Systems. 2009. Vol. 43, No. 3. P. 259-295. DOI: 10.1007/sl 1241-009-9072-у

7. Khoroshilov A., Albitskiy D., Koverninskiy I., et al. A A DL-Based Toolset for IMA System Design and Integration. // SAE Int. J. Aerosp. 2012. Vol. 5, No. 2. P. 294-299. DOI: 10.4271/2012-01-2146

8. Dissaux P., Marc O., Fotsing C., et al. The SMART project: Multi-Agent Scheduling Simulation Of Real-Time Architectures // Embedded Real Time Software and Systems. 2014.

9. Balashov V.V., Balakhanov V.A., Kostenko V.A. Scheduling of Computational Tasks in Switched Network-Based IMA systems // Proceedings of International Conference on Engineering and Applied Sciences Optimization (OPTI) (Athens, Greece, June 4-6, 2014), 2014. P. 1001-1014.

10. Cassez F., Larsen K. The Impressive Power of Stopwatches // CONCUR. 2000 — Concurrency Theory (PA, USA, August 22-25, 2000). LNCS. Springer, 2000. Vol. 1877. P. 138-152. DOI: 10.1007/3-540-44618-4_12

11. Tretyakov A. Automation of Scheduling for Periodic Real-Time Systems // Proceedings of the Institute for System Programming. 2012. Vol 22. P. 375-400. DOI: 10.15514/ISPRAS-2012-22-20

12. Smelyansky R.L. Model of Distributed Computing System Operation With Time /7 Programming and Computer Software, 2013. Vol. 39, No. 5. P. 233-241. DOI: 10.1134/S0361768813050046

13. Bengtsson J., Yi W. Timed Automata: Semantics, Algorithms and Tools /7 Lectures on Concurrency and Petri Nets. LNCS. Springer, 2004. Vol. 3098. P. 87-124. DOI: I0.1007/'978-3-540-27755-2_3

14. Zuberek W.M. Timed Petri Nets Definitions, Properties and Applications // Microelectronics Reliability, 1991. Vol. 31, No. 4. P. 627-644. DOI: 1О.1О16/0026-2714(91)9ООО7-Т

15. Boudjadar A.J., Kirn Л.Н., Larsen K.G., et al. Model Checking Process Algebra of Communicating Resources for Real-time Systems j j Proceedings of the 26tli Euromicro Conference on Real-Time Systems (ECRTS) (Madrid, Spain, July 8-11, 2014), 2014. P. 51-60. DOI: 10.1109/ECRTS.2014.24

16. Lime D., Roux O.H., Seidner C., et al. Romeo: A Parametric Model-Checker for Petri Nets with Stopwatches // Tools and Algorithms for the Construction and Analysis of Systems (TACAS) (York, UK, March 22-29, 2009). LNCS. Springer, 2009. Vol. 5505. P. 54-57 DOI: 10.1007/978-3-642-00768-2_6

17. Henzinger T. The Theory of Hybrid Automata / / Verification of Digital and Hybrid Systems. NATO ASI Series. Springer, 2000. Vol. 170. P. 265-292. DOI: 10.1007/978-3-642-59615-5_ 1

18. Бусленко Н.П. Моделирование сложных систем. М.: Наука, 1978. 400 с.

19. Andre Е. Observer Patterns for Real-Time Systems // Proceedings of the 18th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS) (Singapore, July 17-19, 2013), 2013. P. 125-134. DOI: 10.1109/ICECCS.2013.26

20. Avionics Application Software Standard Interface. ARINC Specification 653 // Aeronautical Radio. Annapolis, 1997.

Алевтина Борисовна Глонина, программист, лаборатория вычислительных комплексов, кафедра автоматизации систем вычислительных комплексов, Московский государственный университет имени М.В. Ломоносова (Москва, Российская Федерация)

DOI: 10.14529/ cmsel70404

GENERAL MODEL OF REAL-TIME MODULAR COMPUTER SYSTEMS OPERATION FOR CHECKING ACCEPTABILITY OF SUCH SYSTEMS CONFIGURATIONS

© 2017 A.B. Glonina

Lomonosov Moscow State Universisty (GSP-1, Leninskie Gory 1, Moscow, 119991 Russia)

E-mail: [email protected] Received: 06.09.2017

In this paper, we consider schedulability analysis problem for real-time modular computer systems (RT MCS), A system configuration is called schedulable if all the jobs complete within their deadlines. The paper contains formal definitions of a system configuration and a system operation trace which is necessary for checking the schedulability criterion. The author proposes a stopwatch automat a-based general model of RT MCS operation. A model instance for a given RT MCS configuration is a network of stopwatch automata and it can be built automatically using the general model. A system operation trace can be obtained from the corresponding NSA trace. The stopwatch automata formalism allowed us to prove that the model is deterministic and satisfies a set of correctness requirements derived from RT MCS specifications. We implemented our approach in software and

compared it experimentally with Model Checking approach, which uses the same formalism. The results of the experiments confirm that our approach is much more efficient. The software implementation is also integrated with the existing industrial RT MCS scheduling tool. These experiments showed the applicability of the proposed approach to real scale systems.

Keywords: modular computer systems, schedulabihty analysis, stopwatch automata, simulation, real-time systems

FOR CITATION

Gloiiiiia A.B. General Model of Real-Time Modular Computer Systems Operation for Checking Acceptability of Such Systems Configurations. Bulletin of the South Ural State University, Series: Computational Mathematics and Software Engineering. 2017. vol. 6, no. 4. pp. 43-59. (in Russian) DOI: 10.14529/'cmsel70404.

This paper is distributed under the terms of the Creative Commons Attribution-Non Commercial 3.0 License which permits non-commercial use, reproduction and distribution of the work without further permission provided the original work is properly cited.

References

1. Senthilkumar K., Ramadoss R. Designing Multicore ECU Architecture in Vehicle Networks Using AUTOSAR. Proceedings of the Third International Conference on Advanced Computing (ICoAC) (Chennai, India, December 14-16, 2011), 2011. pp. 270-275. DOI: 10.1109/ICoAC.2011.6165187

2. From the Ground Up: How The Internet of Things Will Give Rise to Connected Aviation. Gogo LLC, 2016. 140 p.

3. Marinescu S., Tanias-Selicean D., Acretoaie V., et al. Timing Analysis of Mixed-Criticality Hard Real-Time Applications Implemented on Distributed Partitioned Architectures. Proceedings of the 17th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA) (Krakow, Poland, September 17-21, 2012), 2012. pp. 1-4. DOI: 10.1109/ETFA.2012.6489720

4. Macariu G., Cretu V. Timed Automata Model for Component-Based Real-Time Systems. Proceedings of the 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems (ECBS) (Oxford, UK, March 22-26, 2010), 2010. pp. 121-130. DOI: 10.1109/ECBS.2010.20

5. Craveiro J.P., Silveira R.O., Rufino J. HsSim: an Extensible Interoperable Object-Oriented 11-Level Hierarchical Scheduling Simulator. Proceedings of the 3rd International Workshop on Analysis Tools and Methodologies for Embedded and Real-time Systems (WATERS) (Pisa, Italy, July 10, 2012), 2012. pp. 9-14.

6. Singhoff F., Plantec A., Dissaux P., et al. Investigating the Usability of Real-Time Scheduling Theory with the Cheddar Project. Real-Time Systems. 2009. vol. 43, no. 3. pp. 259-295. DOI: 10.1007/sl 1241-009-9072-у

7. Khoroshilov A., Albitskiy D., Koverninskiy I., et al. A A DL-Based Toolset for IMA System Design and Integration. SAE Int. J. Aerosp. 2012. vol. 5, no. 2. pp. 294-299. DOI: 10.4271/2012-01-2146

8. Dissaux P., Marc O., Fotsing C., et al. The SMART Project: Multi-Agent Scheduling Simulation of Real-Time Architectures. Embedded Real Time Software and Systems. 2014.

9. Balashov V.V., Balakhanov V.A., Kostenko V.A. Scheduling of Computational Tasks in Switched Network-Based IMA Systems. Proceedings of International Conference on Engineering and Applied Sciences Optimization (OPTI) (Athens, Greece, June 4-6, 2014), 2014. pp. 1001-1014.

10. Cassez F., Larsen K. The Impressive Power of Stopwatches. CONCUR 2000 — Concurrency Theory (PA, USA, August 22-25, 2000). LNCS. Springer, 2000. vol. 1877. pp. 138-152. DOI: 10.1007/'3-540-44618-4_12

11. Tretyakov A. Automation of Scheduling for Periodic Real-Time Systems.

Proceedings of the Institute for System Programming. 2012. vol 22. pp. 375-400. DOI: 10.15514/ISPRAS-2012-22-20

12. Snielyansky R..L. Model of Distributed Computing System Operation with Time. Programming and Computer Software, 2013. vol. 39, no. 5. pp. 233-241. DOI: 10.1134/S0361768813050046

13. Bengtsson Л., Yi W. Timed automata: Semantics, Algorithms and Tools. Lectures

on Concurrency and Petri Nets. LNCS. Springer, 2004. vol. 3098. pp. 87-124. DOI: 10.1007/978-3-540-27755-2_3

14. Zuberek W.M. Timed Petri Nets Definitions, Properties and Applications. Microelectronics Reliability, 1991. vol. 31, no. 4. pp. 627-644. DOI: 10.1016/0026-2714(91)90007-T

15. Boudjadar A.J., Kim J.H., Larsen K.G., et al. Model Checking Process Algebra of Communicating Resources for Real-time Systems. Proceedings of the 26th Euromicro Conference on R,eal-Tirne Systems (ECR.TS) (Madrid, Spain, July 8-11, 2014), 2014. pp. 51-60. DOI: 10.1109/ECRTS.2014.24

16. Lime D., Roux O.H., Seidner C., et al. Romeo: A Parametric Model-Checker for Petri Nets with Stopwatches. Tools and Algorithms for the Construction and Analysis of Systems (TACAS) (York, UK, March 22-29, 2009). LNCS. Springer, 2009. vol. 5505, pp. 54-57. DOI: 10.1007/978-3-642-00768-2_6

17. Henzinger T. The Theory of Hybrid Automata. Verification of Digital and Hybrid Systems. NATO AS I Series. Springer, 2000. vol. 170. pp. 265-292. DOI: 10.1007/978-3-642-59615-5_1

18. Buslenko N.P. Modelirovanie slozhnyh sistern [Complex Systems Modeling]. Moscow7, Nauka, 1978. 400 p.

19. Andre E. Observer Patterns for Real-Time Systems. Proceedings of 18th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS) (Singapore, July 17-19, 2013), 2013. pp. 125-134. DOI: 10.1109/ICECCS.2013.26

20. Avionics Application Software Standard Interface. ARINC Specification 653. Aeronautical Radio. Annapolis, 1997.

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