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

кандидата технических наук
Леонтьев, Андрей Евгеньевич
город
Санкт-Петербург
год
2005
специальность ВАК РФ
05.13.11
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Анализ использования ресурсов встроенных систем реального времени на основе графических спецификаций»

Автореферат диссертации по теме "Анализ использования ресурсов встроенных систем реального времени на основе графических спецификаций"

На правах рукописи

Леонтьев Андрей Евгеньевич

Анализ использования ресурсов встроенных систем реального времени на основе графических спецификаций

Специальность 05.13.11 -Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Автореферат

диссертации на соискание ученой степени кандидата технических наук

Санкт-Петербург 2005

Работа выполнена на кафедре компьютерной математики и программирования при Государственном образовательном учреждении высшего профессионального образования "Санкт-Петербургский государственный университет аэрокосмического приборостроения".

Научный руководитель:

кандидат технических наук, доцент Бржезовский Александр Викторович.

Официальные оппоненты:

доктор технических наук, профессор Гордеев Александр Владимирович; кандидат технических наук, доцент Карпова Татьяна Сергеевна.

Ведущая организация: Институт информатики и математического моделирования Кольского Научного Центра РАН.

Защита диссертации состоится " 2005 г.

в 15 часов на заседании диссертационного совета Д 212.233.02. при Государственном образовательном учреждении высшего профессионального образования "Санкт-Петербургский государственный университет аэрокосмического приборостроения" по адресу: 190000, г. Санкт-Петербург, ул. Большая Морская, д. 67.

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

Автореферат разослан " 2Z " ¿иИ^Ту^/Я 2005 г.

Ученый секретарь диссертационного совета,'(уСси^Д-А- Осипов, доктор технических наук, профессор

з

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

Как правило, анализ систем осуществляется на основе спецификаций, выполненных с использованием диаграммных языков, табличных или формульных представлений. В связи с широким развитием объектно-ориентированных технологий, при построении спецификаций используется преимущественно графический язык Unified Modeling Language (UML). Данный язык имеет широкий набор функциональных возможностей, поддерживается большинством ведущих производителей инструментального программного обеспечения, а также предлагает механизмы для своего расширения. Однако существующие инструментальные средства обладают рядом недостатков: не поддерживают различные существующие методы анализа систем, в них практически отсутствует поддержка проектирования сложных систем реального времени.

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

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

СП 09

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

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

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

Основные задачи. Для достижения поставленной цели в диссертационной работе решались следующие основные задачи:

1) Разработка графических расширений стандартных диаграмм ЦМЬ, предоставляющих возможности для четко структурированной и детальной спецификации аппаратной конфигурации сложных систем и детализации распределения программных компонентов по аппаратным узлам;

2) Построение математической модели статических составляющих и динамических характеристик системы, необходимой для проведения ресурсного анализа;

3) Разработка алгоритма трансляции математической модели, построенной на основе расширенных диаграмм 1]МЬ в модель статических составляющих и динамических характеристик системы;

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

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

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

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

алгоритмов и теория формальных языков, общие методы системного анализа, а также методы математической логики.

Научная новизна. В процессе выполнения исследований были получены следующие научные результаты:

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

2) Предложен алгоритм трансляции, позволяющий получить из модели расширенных 11МЬ диаграмм модель статических составляющих и динамических характеристик системы, необходимую для анализа с использованием новых разработанных алгоритмов;

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

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

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

Основные положения, выносимые на защиту:

1) графические расширения диаграммы распределения и компонентной диаграммы для встроенных систем реального времени;

2) алгоритм трансляции математической модели расширенных ИМЬ диаграмм в модель статических составляющих и динамических характеристик системы;

3) алгоритм оценки использования ресурсов коммуникационных соединений системы на основе модели статических составляющих и динамических характеристик системы;

4) алгоритм оценки использования ресурсов хранения информации на основе модели статических составляющих и динамических характеристик системы.

Внедрение результатов. Результаты диссертационной работы были внедрены в конструкторском бюро "Арсенал" им. М.В. Фрунзе при разработке специального программного обеспечения бортового вычислительного комплекса по ОКР "Создание математических и программных моделей устройств контура управления СМ изделия "JI-CM"" (государственный регистрационный номер 01200314551), и использованы в научно-техническом центре "Протей" при разработке встроенного программного обеспечения шлюза цифровой телефонии, построенного на базе систем ЦОС. Кроме того, результаты диссертационной работы внедрены в учебный процесс Санкт-Петербургского Государственного университета аэрокосмического приборостроения в курсах организации ЭВМ, технологии разработки программного обеспечения и систем реального времени.

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

Апробация работы.

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

1) б-я научная сессия аспирантов молодых ученых и соискателей ГУАП, СПб, 2003;

2) 10-я ежегодная международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика", МЭИ, Москва, 2004;

3) 7-я научная сессия аспирантов, молодых ученых и соискателей ГУАП, СПб, 2004;

4) пятая международная научно-техническая конференция "Авиакосмические технологии - 2004", ВГТУ, Воронеж, 2004;

5) 8-я научная сессия аспирантов, молодых ученых и соискателей ГУАП, СПб, 2005;

6) 11-я ежегодная международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика", МЭИ, Москва, 2005;

7) 10-я международная научно-техническая конференция "Современные проблемы автоматизации", ВГТУ, Воронеж, 2005;

8) международная молодежная научная конференция "XXXI ГАГАРИНСКИЕ ЧТЕНИЯ", МАТИ, Москва, 2005;

9) 12-я Всероссийская межвузовская научно-техническая конференция студентов и аспирантов "Микроэлектроника и информатика - 2005", МИЭТ, Москва, 2005.

Публикации. По результатам диссертационных '«¡следований опубликовано 9 печатных работ, в числе которых 5 научнчх статей, 4 публикации тезисов докладов.

Структура и объем диссертации. Диссертация состоит и: введения, пяти глав, заключения, списка литературы (101 наименование) и приложений. Объем основной части - 159 страницы машинописна^ текста. Работа содержит 35 рисунка и одну таблицу.

СОДЕРЖАНИЕ РАБОТЫ

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

В первой главе диссертации производится обзор существующих объектно-ориентированных технологий проектирования систем реального времени, показываются их особенности и недостатки. Кратко рассматривается стандарт языка UML версии 2.0, анализируется состав и основное назначение стандартных диаграмм, а также стандартные механизмы расширения (язык Object-Constrained Language, профиль UML для спецификации временных требований и требований синхронизации).

В области систем реального времени существует несколько расширений, базирующихся на использовании языка UML:

- CODARTS (Concurrent Design Approach for Real-Time Systems), автором которого является X. Гомаа, в котором подробно рассматриваются вопросы параллельности и синхронизации задач при проектировании системы;

- RT-UML (Real Time UML), автором которого является Б. Силик, где для повышения функциональности диаграмм вводится ряд дополнительных графических элементов и рассматривается применение апробированных шаблонов;

- ROPES (Rapid Object-oriented Process for Embedded System), автором которого является Б. Дуглас, в нем рассматривается техника спецификации поведения различных объектов реального времени, шаблоны поведения, каркасы проектирования систем.

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

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

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

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

Для последующего ресурсного анализа выбирается следующий набор

ЦМЬ диаграмм:

- диаграмма классов;

- диаграмма объектов;

- диаграмма состояний;

- диаграмма последовательностей;

- диаграмма распределения;

- временная диаграмма;

- компонентная диаграмма.

Вводится деление на два типа классов: классы обработки информации (алгоритмические действия и вычисления) и классы ввода-вывода информации (передача информации через устройства). Классы ввода-вывода описываются с помощью специального шаблона, с определенным набором функций: инициализации устройства, ввода, вывода, обработки прерываний и управления устройством. Такое разделение классов позволяет четко структурировать задачи по назначению.

Для компонентной диаграммы предлагается введение компонентов двух типов: компонентов данных и компонентов программного кода. Компоненты данных представляют собой набор атрибутов данных одного или нескольких объектов класса (классов), а компоненты программного кода - набор функций одного или нескольких объектов класса (классов). Разделение на компоненты данных и программного кода полезно при рассмотрении и анализе программных систем, разрабатываемых для процессорных архитектур Гарвардскою типа (раздельная память команд и данных), которые часто применяются во встроенных системах, особенно системах с использованием современных цифровых сигнальных процессоров.

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

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

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

Использование расширенной компонентной диаграммы позволяет создать новые виды диаграммы распределения: диаграмма распределения обработки данных и ввода-вывода данных. Каждая диаграмма имеет две интерпретации: хранения и выполнения. Диафамма обработки данных содержит набор компонентов атрибутов и программного кода, принадлежащих объектам классов обработки данных. Диаграмма ввода-вывода содержит набор компонентов атрибутов и программного кода, принадлежащих объектам классов ввода-вывода. Интерпретация хранения содержит набор компонентов для последующего отображения на диаграммы распределения с целью показа аппаратных узлов, на которых находятся компоненты на этапах до, во время и после выполнения программы. Интерпретация выполнения содержит набор компонентов для последующего отображения на диаграммы распределения для показа аппаратных узлов, на которых компоненты выполняются. На рис. 1 показана интерпретация хранения, а на рис. 2 - интерпретация выполнения.

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

Рис. 1. Интерпретация хранения диаграммы распределения

Рис. 2. Интерпретация выполнения диаграммы распределения

В третьей главе, при помощи аппарата теории множеств, разработана математическая модель определенного во второй главе набора расширенных ЦМЬ диаграмм. Потребность в разработке такой модели возникает, поскольку в литературе, посвященной данному вопросу, такой модели не встречается, или же встречается описание только некоторых диаграмм (диаграммы классов и объектов).

Математическая модель системы, построенная на основе расширенных иМЬ диаграмм, выглядит следующим образом:

Определение 1. Математическая модель системы на основе расширенных ЦМЬ диаграмм это:

М1Ж =(С1и"\ ОЬиж, Т"ш, Стиж,Орш ), (1)

где С1'л" - множество диаграмм классов; ОЬ'м' ~ множество диаграмм объектов; Б^"'- множество диаграмм состояний; .V'''" -множество диаграмм последовательностей; г™1- множество временных диаграмм; Ст'м - множество компонентных диаграмм; Ор1Ш- множество диаграмм развертывания.

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

В четвертой главе разработана модель статических составляющих и динамических характеристик системы, необходимая для проведения ресурсного анализа. Данная модель строится, поскольку модель расширенных ЦМЬ диаграмм обладает рядом недостатков, серьезно затрудняющих анализ системы:

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

- для анализа используется только 47% содержащихся на диаграмме данных;

- плохая структурированность информации.

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

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

- динамический аспект - варианты поведения системы при получении внешних и внутренних событий.

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

Определение 2: Математическая модель статических составляющих и динамических характеристик системы это:

Мм =(РпАХ, ЕпА\ Я»/"), (2)

где

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

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

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

¡Ыш - множество аппаратных компонентов системы. Представляет собой совокупность всех аппаратных устройств и соединений системы.

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

Рис. 3. Структурная схема преобразований моделей

Пример формирования множества функций модели стических составляющих и динамических характеристик:

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

Если Зт,ОТ„ = ™

Vl,j,k-.CÇf„ € Ofif, N^, = пЖМЪ.)* (3)

бFnM= //л#(<(0)' где ftnM () - функция преобразования имени функции;

- имена функций формируются по функции ftnfQ в соответствии со следующим правилом:

<имя функции модели статических составляющих и динамических характеристик >=

<имя физического узла> +<.>+ <имя компонента >+<.>+ <имя объекта> + о + <имя класса>+ <.> + (4) <имя функции>,

или

3iJXl.m- fin, 0 = (»CdO = JC)■+ 0 + «О = АС ) + О NZ)+= лен (5)

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

- типы спецификаторов функций диаграмм классов сопоставляются с типами спецификаторов функций модели статических составляющих и динамических характеристик.

Если 3 (см. формулу 3) и О^еО™', то

п1в, = Ма (Оси) (О,)

- атрибуты функций и имена атрибутов функций классов из множества (С11ш) сопоставляются атрибутам функций и именам атрибутов функций модели статических составляющих и динамических характеристик.

Если 31,] (см. формулу 3), то

Ч 1г ™ ■ ТГ1ла- = жг'ЛЛ _ „„(ЛЯ. п/им>- \

АП,теРЛ,' "аЯ, „ Уй = т > » = "»«»Я, я ( ¿ГЪ т )

при конвертации (7) имена атрибутов транслируются напрямую, не подвергаясь каким-либо изменениям;

- задание функциям приоритетов выполнения, а также типов приоритетов необходимо при таких видах анализа системы, как анализ планирования реального времени (монолитно-частотный, монолитно-граничный, динамические границы и невытесняемые задачи). Спецификация языка ЦМЬ не предусматривает определения приоритетности, и поскольку в данной работе анализ планирования не рассматривается, то можно считать, что параметры {Р£ ,пттР£, ппахР^") задаются на основе внешней спецификации, и в дальнейшем пс используются.

Однозначность преобразований моделей формулируется при помощи теоремы и доказывается.

Теорема 1. Математическая модель расширенных иМЬ диаграмм транслируется в модель статических составляющих и динамических характеристик системы без нарушения структурной и функциональной целостности.

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

Структурная схема алгоритмов ресурсного анализа включает следующие шаги:

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

ввода-вывода информации, определяются ключевые параметрические

характеристики интерфейсного устройства, которым управляет данная

функция;

2. Для модели статических составляющих и динамических характеристик системы выделяются все вычислительные устройства (т.е. устройства, на каждом из которых выполняются определенные, отраженные в спецификации, задачи) и определяется минимальный шаг времени моделирования (Г/Шл), равный минимальному из временных тактов работы вычислительных и интерфейсных устройств (формула 7).

VU£ : Т1^=шт(иАн:,)Жи^,),~Жи%к)) (7)

3. Для каждого из вычислительных устройств tu™(U%) = processing (процессорные элементы, микросхемы жесткой логики) на каждом шаге моделирования, согласно модели статических составляющих и динамических характеристик, определяется действие (обработка или передача информации). При передаче информации анализируется работа всех интерфейсных устройств, подключенных к коммуникационному соединению, через которое осуществляется передача данных. Анализ работы происходит с использованием заложенной в пункте 1 логике работы соответствующего устройству функции. В результате определяются времена работы функций ввода-вывода и рассчитывается процент занятости коммуникационных соединений;

4. Используя полученные в предыдущем пункте времена работы функций ввода-вывода, имеющиеся времена выполнения функций обработки данных, а также отметки о динамическом выделении/освобождении памяти рассчитывается количество используемой/свободной памяти на каждый момент;

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

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

1. Строится несколько сценариев работы системы. Сценарии могут различаться по размеру обрабатываемых данных и скоростям передачи информации для интерфейсных устройств. Из модели статических составляющих и динамических характеристик системы выбирается один из сценариев работы (3k,Sc^k).

2. Из множества аппаратных компонентов выбираются все вычислительные устройства 3tu£(Uf£,) = processing). На каждом временном шаге анализируется процесс, происходящий на каждом вычислительном устройстве (функция ввода-вывода данных или обработки информации). Последовательность выполнения процессов для каждого из вычислительных устройств находится из

рассмотрения последовательности вызова состояний в сценарии (осуществляется цикл от состояния Э/, to" (S^) = start до состояния 3/, (Sg/i) = stop), а принадлежность функции к состоянию (или событию, вызывающему функцию при переходе из состояния в состояние) и функции к вычислительному устройству через nfs^(nfe*") и ff£. Составные состояния декомпозируются до набора простых состояний.

3. Если на временном шаге происходит выполнение функции обработки информации, то время выполнения функции, полученное на этапе моделирования, инкрементируется. Инкремент времени происходит до тех пор, пока V/,т:Г" =nt™(F™m) не станет равной нулю, затем осуществляется переход на рассмотрение следующей функции (в том же состоянии или в событии - другом состоянии).

4. Если на временном шаге происходит выполнение функции ввода-вывода информации (кроме функции Interrupt(...)), то используется алгоритм работы данной функции и время работы функции Tf* рассчитывается как:

ТОГ-Яю+Яг (8)

где - сумма всех времен, затраченных на инициализацию,

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

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

(9)

где N^ - размер данных, - скорость среды, Т1П - время занятости среды.

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

(10)

где Т^ - время арбитража, Т,п - время занятости среды в системе с многими абонентами.

6. Если на временном шаге вычислительное устройство принимает/передает данные, то анализируется работа функции Ьйеггир^...). Если событие для срабатывания прерывания происходит, то вызывается обработчик функции прерывания, время работы которого считается как

2Х (п)

где - время сохранения/восстановления регистров и флагов при прерывании.

Таким образом, на выходе работы алгоритма мы имеем Т^ -множество времен работы функций ввода-вывода и Т1п - множество моментов времени занятости коммуникационных сред.

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

процентная

загруженность

среды

Рис. 4. График использования коммуникационного соединения

Алгоритм оценки использования ресурсов устройств хранения информации является добавочным по отношению к алгоритму оценки использования коммутационных соединений. Поскольку в предыдущем алгоритме мы получаем Т,4* для обоих типов функций - обработки информации и ввода-вывода, то и для оценки занимаемой/свободной памяти в предыдущий алгоритм необходимо добавить следующие шаги:

1. (Шаг 1а для предыдущего алгоритма). Перед началом работы системы определяем все объекты классов, постоянно занимающих память Эp,d£p э ия^ди/Д) = statte. По этим данным, в соответствии с расположением этих объектов (интерпретации хранения и выполнения) рассчитывается объем постоянно занимаемой памяти данными на носителе, хранящем информацию (жесткий диск, флэш-память) и объем временно занимаемой

памяти (оперативная память). Подсчитанный объем является

постоянным вычитаемым от общего объема используемой памяти данных (формула 12).

Sda,a^„ = Y.nD*Sr, О2)

где sp - размер одного объекта данного, пв - количество объектов данных.

2. Размер кода функций SíW„„„„ в обеих интерпретациях постоянен и рассчитывается согласно формуле 13.

где sf - размер кода функции.

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

3. В процессе работы системы в каждый момент времени анализируются объекты с 3э ntt',fp (Df;^) = dynamic. В момент времени с событием nt" ) = create считается объем создаваемых объектом данных, а в момент с событием «¿A(£vLV) = delete считается объем удаляемых данных. Подсчитанный объем является переменным вычитаемым от общего объема используемой памяти данных на интерпретации выполнения (формула 14).

SjaL,vniable = У Пи *'ffj (14)

4. При интерпретации выполнения необходимо также учитывать размер программного стека S „„, и размер кучи под динамическую память (Формула 15).

Sdato addition^ ~ $dota heap + ^data flock 0^)

Если на каком-нибудь временном этапе будет справедливо условие •Ял«™,»«, > Sdaiaheap>то работа системы станет нестабильной и может привести к сбоям.

Таким образом, объем памяти simvc, занимаемый на этапе хранения на каждом из устройств хранения определяется как (формула 16):

^storage ~ ^daia cant ^codecoiist ( ^

а объем занимаемой памяти Snrnrettino на этапе выполнения:

ргос? 15Ш х

s + s + ? + s (мл

procerт g dotaeonsi cndcconv daia w tahlc daa маек V1 í

Для устройств хранения информации целесообразно использовать вид графика имеющего три обязательных кривые (Рис. 5):

- максимальная емкость устройства хранения информации (L^ ^ const);

- используемая часть памяти под статические данные (L - const);

используемая часть памяти под динамические данные

(variable).

размер ресурса хранения информации, Мбайт

100--

аоас зо _ г 20 -10 --

0 I ] I I [ | I | I I I I | I | I | | I | I I .

время.

Рисунок 5. График использования ресурса хранения информации

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

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

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

• графический диаграммер - позволяет описывать спецификацию проектируемой системы с использованием расширенных ЦМЬ диаграмм версии 2.0.

• транслятор - осуществляет преобразование ЦМЬ спецификации в модель описания статических составляющих и динамических характеристик системы;

• библиотека шаблонов описаний устройств ввода-вывода - содержит алгоритмические описания работы коммутационных соединений;

• симулятор - осуществляет анализ работы системы с использованием разработанных алгоритмов;

• графический визуализатор - строит храфические и табличные представления использования ресурсов.

Исходными данными для про1раммы является 1)МЬ спецификация системы, выходными данными - 1рафические или табличные представления ресурсного использования.

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

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

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

Разработанный способ оценки использования аппаратных ресурсов системы был применен в ряде опытно-конструкторских работ в НТЦ "Протей" и конструкторском бюро "Арсенал" им. М.В. Фрунзе. Проведенные в ходе эксперимента измерения показали, что данный способ позволяет до 25% уменьшить время разработки изделия (от общего времени разработки) и обнаружить до 58 % ошибок в спецификации.

В заключении изложены основные научные и практические результаты.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

Основные результаты диссертационной работы кратко можно представить в следующем виде:

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

2) разработана модель статических составляющих и динамических характеристик системы, необходимая для проведения ресурсного анализа;

3) разработан алгоритм трансляции модели, построенной на основе расширенных UML диаграмм в модель стагических составляющих и динамических характеристик системы;

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

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

СПИСОК ПУБЛИКАЦИЙ ПО ТЕМЕ ДИССЕРТАЦИИ

1. Бржезовский A.B., Леонтьев А.Е. Метод оценки временных и емкостных характеристик для систем цифровой обработки сигналов// Шестая научная сессия аспирантов ГУАП: Сб. докл./ СПбГУАП. СПб., 2003. С. 251-253.

2. Бржезовский A.B., Леонтьев А.Е. Алгоритм трансляции расширенных UML диаграмм в аналитическую модель// Седьмая научная сессия аспирантов ГУАП: Сб. докл./ СПбГУАП. СПб., 2004. С. 334-336.

3. Бржезовский A.B., Леонтьев А.Е. Методика анализа UML диаграмм для получения ресурсных характеристик системы// Тез. докл. Десятой Междунар. науч.-техн. конф. студентов и аспирантов "Радиотехника, электротехника и энергетика", МЭИ. Москва, 2004. Том 1. С. 365-366.

4. Леонтьев А. Е. Построение аналитических множеств и ресурсный анализ систем на основе UML диаграмм// Труды пятой Междунар. науч.-техн. конф. " Авиакосмические технологии "АКТ-2004": Ч. 2: Прикладные задачи механики. Математическое моделирование. Аэрогидродинамика и теплообмен", ВГТУ. Воронеж, 2004. С. 224-226.

5. Леонтьев А.Е. Применение UML при проектировании встраиваемых систем цифровой обработки сигналов// Информационно-управляющие системы. 2004. № 2. С. 38-44.

6. Леонтьев А.Е. Использование расширенного аппарата логики реального времени для получения ресурсных характеристик систем// Современные проблемы автоматизации в непромышленной сфере и экономике: Сб. трудов. Вып. 10/ Под редакцией д.т.н., проф. О. Я. Кравца; Воронеж. Изд-во "Научная книга", 2005. С. 117-118.

7. Бржезовский A.B., Леонтьев А. Е. Элементы расширения UML диаграмм для встроенных систем и систем цифровой обработки сигналов// Тез. докл. Одиннадцатой Междунар. науч.-техн. конф. студентов и аспирантов "Радиотехника, электротехника и энергетика", МЭИ. Москва, 2005. Том 1. С. 431-432.

8. Леонтьев А.Е. Анализ динамического изменения ресурсных характеристик для систем реального времени// Тез. докл. Международной молодежной научной конференции "XXXI Гагаринские чтения", Москва. Изд-во «ЛАТМЭС», 2005. Том 4. С. 3637.

9. Леонтьев А.Е. Использование элементов расширения диаграмм UML при проектировании систем реального времени// Тез. докл. 12-ой Всероссийской межвузовской научно-технической конференции студентов и аспирантов "Микроэлектроника и информатика", МИЭТ. Москва, 2005. С. 39-40.

Формат 60x84 1/16. Бумага офсетная. Печать офсетная. _Тираж 100 экз. Заказ № Ш_

Отдел опера-ивной полиграфии ГОУВПО"СПбГУАП" 190000, Санкт-Петербург, ул. Б. Морская, 67

*Î6 99$

РНБ Русский фонд

2006-4 19589

Оглавление автор диссертации — кандидата технических наук Леонтьев, Андрей Евгеньевич

ВВЕДЕНИЕ.

1. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЕ СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ, СПЕЦИФИКАЦИЯ, ПРОЕКТИРОВАНИЕ И АНАЛИЗ.

1.1. Понятие систем реального времени и их параметрические характеристики.

1.2. Ранние методы объектно-ориентированного анализа систем.

1.3. Существующие методы объектно-ориентированного анализа для систем реального времени.

1.4. Унифицированный язык UML и его использование при проектировании систем реального времени.

1.5. Расширение Real Time UML.

1.6. Анализ возможностей программного обеспечения для объектно-ориентированного анализа реального времени.

1.7. Методы формального анализа и верификации систем реального времени.

1.8. Выводы.

2. ЗАДАЧИ РАСШИРЕНИЯ СТАНДАРТНЫХ UML ДИАГРАММ.

2.1. Необходимые UML диаграммы.

2.2. Принцип построения диаграмм классов.

2.3. Элементы расширения диаграммы распределения.

2.4. Элементы расширения временной диаграммы.

2.5. Элементы расширения компонентной диаграммы.

2.6. Выводы.

3. МАТЕМАТИЧЕСКИЕ МОДЕЛИ СТАНДАРТНЫХ И РАСШИРЕННЫХ UML ДИАГРАММ.

3.1. Требования к математической модели.

3.2. Модель диаграммы классов.

3.3. Модель диаграммы объектов.

3.4. Модель диаграммы состояний.

3.5. Модель диаграммы последовательностей.

3.6. Модель временной диаграммы.

3.7. Модель диаграммы компонентов.

3.8. Модель диаграммы распределения.

3.9. Выводы.

4. МОДЕЛЬ СТАТИЧЕСКИХ СОСТАВЛЯЮЩИХ И ДИНАМИЧЕСКИХ ХАРАКТЕРИСТИК СИСТЕМЫ. АЛГОРИТМ ПРЕОБРАЗОВАНИЯ МАТЕМАТИЧЕСКОЙ МОДЕЛИ UML ДИАГРАММ В МОДЕЛЬ СТАТИЧЕСКИХ СОСТАВЛЯЮЩИХ И ДИНАМИЧЕСКИХ ХАРАКТЕРИСТИК СИСТЕМЫ.

4.1. Модель статических составляющих и динамических характеристик системы.

4.2. Модель функций.

4.3. Модель объектов данных.

4.4. Модель сценариев работы системы.

4.5. Модель аппаратных компонентов системы.

4.6. Алгоритм трансляции математической модели UML диаграмм в модель статических составляющих и динамических характеристик системы.

4.7. Выводы.

5. АЛГОРИТМЫ РЕСУРСНОГО АНАЛИЗА КОММУНИКАЦИОННЫХ СОЕДИНЕНИЙ И УСТРОЙСТВ ХРАНЕНИЯ ИНФОРМАЦИИ.

5.1. Общий подход к построению алгоритмов ресурсного анализа.

5.2. Способ описания функций ввода-вывода системы.

5.3. Алгоритм оценки использования коммуникационных соединений.

5.4. Алгоритм оценки использования ресурсов хранения информации.

5.5. Табличные и графические представления результатов.

5.6. Практическая реализация алгоритмов.

5.7 Оценка эффективности способа оценки ресурсных характеристик.

5.8. Выводы.

Введение 2005 год, диссертация по информатике, вычислительной технике и управлению, Леонтьев, Андрей Евгеньевич

Актуальность

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

Как правило, анализ систем осуществляется на основе спецификаций, выполненных с использованием диаграммных языков, табличных или формульных представлений. В связи с широким развитием объектно-ориентированных технологий, при построении спецификаций используется преимущественно графический язык Unified Modeling Language (UML). Данный язык имеет широкий набор функциональных возможностей, поддерживается большинством ведущих производителей инструментального программного обеспечения, а также предлагает механизмы для своего расширения. Однако существующие инструментальные средства обладают рядом недостатков: не поддерживают различные существующие методы анализа систем, в них практически отсутствует поддержка проектирования сложных систем реального времени.

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

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

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

Цель работы

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

Задачи работы

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

2) Построение математической модели статических составляющих и' динамических характеристик системы, необходимой для проведения ресурсного анализа;

3) Разработка алгоритма трансляции математической модели, построенной на основе расширенных диаграмм UML в модель статических составляющих и динамических характеристик системы;

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

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

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

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

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

Основные положения, выносимые на защиту:

1) графические расширения диаграммы распределения и компонентной диаграммы для встроенных систем реального времени;

2) алгоритм трансляции математической модели расширенных UML диаграмм в модель статических составляющих и динамических характеристик системы;

3) алгоритм оценки использования ресурсов коммуникационных соединений системы на основе модели статических составляющих и динамических характеристик системы;

4) алгоритм оценки использования ресурсов хранения информации на основе модели статических составляющих и динамических характеристик системы.

Научная новизна

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

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

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

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

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

Практическая значимость

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

Реализация и внедрение результатов

Результаты диссертационной работы были внедрены в конструкторском бюро "Арсенал" им. М.В. Фрунзе при разработке специального программного обеспечения бортового вычислительного комплекса по ОКР "Создание математических и программных моделей устройств контура управления СМ изделия JI-CM" (государственный регистрационный номер 01200314551), и использованы в научно-техническом центре "Протей" при разработке встроенного программного обеспечения шлюза цифровой телефонии, построенного на базе систем ЦОС. Кроме того, результаты диссертационной работы внедрены в учебный процесс Санкт-Петербургского Государственного университета аэрокосмического приборостроения в курсах организации ЭВМ, технологии разработки программного обеспечения и систем реального времени.

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

Апробация работы

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

1) 6-я научная сессия аспирантов молодых ученых и соискателей СПбГУАП, СПб, 2003;

2) 10-я ежегодная международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика", МЭИ, Москва, 2004;

3) 7-я научная сессия аспирантов, молодых ученых и соискателей СПбГУАП, СПб, 2004;

4) пятая международная научно-техническая конференция "Авиакосмические технологии - 2004", ВГТУ, Воронеж, 2004;

5) 8-я научная сессия аспирантов, молодых ученых и соискателей СПбГУАП, СПб, 2005;

6) 11-я ежегодная международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика", МЭИ, Москва, 2005;

7) 10-я международная научно-техническая конференция "Современные проблемы автоматизации", ВГТУ, Воронеж, 2005;

8) международная молодежная научная конференция "XXXI ГАГАРИНСКИЕ ЧТЕНИЯ", МАТИ, Москва, 2005;

9) 12-я Всероссийская межвузовская научно-техническая конференция студентов и аспирантов "Микроэлектроника и информатика - 2005", МИЭТ, Москва, 2005.

Заключение диссертация на тему "Анализ использования ресурсов встроенных систем реального времени на основе графических спецификаций"

5.8. Выводы

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

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

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

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

5. Проведена оценка эффективности использования данного способа: способ позволяет до 30% уменьшить время разработки изделия и обнаружить до 68 % ошибок в спецификации.

ЗАКЛЮЧЕНИЕ

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

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

2) разработана модель статических составляющих и динамических характеристик системы, необходимая для проведения ресурсного анализа;

3) разработан алгоритм трансляции модели, построенной на основе расширенных UML диаграмм в модель статических составляющих и динамических характеристик системы;

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

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

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

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

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

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

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

Основной эффект от использования предлагаемого способа заключается в уменьшении сроков и трудоемкости разработки.

Библиография Леонтьев, Андрей Евгеньевич, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. Богословская Н.В., Бржезовский А.В., Жаков В.И., Путилов В.А., Фильчаков В.В. Автоматизированные методы спецификации программных систем. Апатиты: КФ ПетрГУ, 1996. - 147 с.

2. Бржезовский А.В., Жаков В.И., Путилов В.А., Фильчаков В.В. Синтез моделей вычислительного эксперимента. СПб.: Наука, 1992. - 231 с.

3. Бржезовский А.В., Леонтьев А.Е. Алгоритм трансляции расширенных UML диаграмм в аналитическую модель// Седьмая научная сессия аспирантов ГУАП: Сб. докл./ СПбГУАП. СПб., 2004. С. 334-336.

4. Бржезовский А.В., Леонтьев А.Е. Метод оценки временных и емкостных характеристик для систем цифровой обработки сигналов// Шестая научная сессия аспирантов ГУАП: Сб. докл./ СПбГУАП. СПб., 2003. С. 251-253.

5. Гома X. UML. Проектирование систем реального времени, параллельных и распределенных приложений: Пер. с англ. М.:ДМК Пресс, 2002. 704 с.

6. Котов Е. В. Сети Петри. М.:Наука., 1984 г. 160 с.

7. Леонтьев А. Е. Анализ динамического изменения ресурсных характеристик для систем реального времени// Тез. докл.

8. Международной молодежной научной конференции "XXXI Гагаринские чтения", Москва. Изд-во «ЛАТМЭС», 2005. Том 4. С. 3637.

9. Леонтьев А. Е. Применение UML при проектировании встраиваемых систем цифровой обработки сигналов// Информационно-управляющие системы. 2004. № 2. С. 38-44.

10. Свами М., Тхуласираман К. Графы, сети и алгоритмы. М.:Мир., 1984 г. -454 с.

11. Селик Б., Румбаух Д. Использование UML при моделировании сложных систем реального времени, www.interface.ru

12. Abid М. Exploration of Hardware/Software Design Space in the Co-design Process// Real-Time Systems Magazine. 2001. № 2. 10-17 pp.

13. Ambler S. The Elements of UML Style. Cambridge University Press, 2003. 146 p.

14. ARTiSAN Real-time Studio Professional. Program Datasheet, Artisan Software, 2003.-4 p.

15. Attalah M. Algorithms and Theory of Computation Handbook. CRC Press, 1999. 1265 p.

16. Barnard I. Hardware/Software Co-Design using UML// Embedded Systems Engeneering Magazine. 2001. № 4. 55-58 pp.

17. Barr M. Programming Embedded Systems with С and С++. O'Reilly, 1999. -191 p.

18. Bell R. Code Generation from Object Models// Embedded Systems Programming. 2001. № 11. 14-23 pp.

19. Berger A. Embedded Systems Design: An Introduction to Processes, Tools, and Techniques. CMP Books, 2002. 237 p.

20. Boggs W., Boggs M. Mastering UML with Rational Rose 2002. Sybex,2002.-715 p.

21. Booch G., Rumbaugh J., Jacobson I. The Unified Modeling Language Reference Manual. Addison Wesley, 1999. 568 p.

22. Booch G., Rumbaugh J., Jacobson I. The Unified Modeling Language User Guide. Addison Wesley, 1998. 512 p.

23. Borger E., Stark R. Abstract State Machines. A Method for High-Level Design and Analysis. Springer-Verlag, 2003. 448 p.

24. Broekman В., Notenboom. Testing Embedded Software. Addison Wesley,2003. 368 p.

25. Buschmann F., Meunier R., Rohnert H., Sornmerlad P., Stal M. Pattern-Oriented Software Architecture, A System of Patterns, Volume 2. John Wiley & Sons, 1996. 487 p.

26. Catsoulis. J. Designing Embedded Hardware. O'Reilly, 2002. 318 p.

27. Cheng A. Real-Time Systems: Scheduling, Analysis, and Verification. John Wiley & Sons, 2002. 506 p.

28. Cheng J., Hong S. Real-Time and Embedded Computing Systems and Applications. Springer-Verlag, 2004. 635 p.

29. Damm W., Cohen M. Advanced Validation Techniques Meet Complexity Challenge in Embedded Software Development// Embedded Systems Engeneering Magazine. 2002. № 6. 30-35 pp.

30. Dion B. Modeling and implementing critical real-time systems with SyncCharts/Esterel// Real-Time Systems Magazine. 1999. № 1. 58-64 pp.

31. Doldi L. The Art of SDL Simulation and Reachability Analysis. John Wiley & Sons, 2003.- 311 p.

32. Douglass B. P. Capturing Real-Time Requirements// Embedded Systems Programming. 2002. № 1. 48-51 pp.

33. Douglass B. P. Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems. Addison Wesley, 2002. 528 p.

34. Douglass B. P. Real-Time UML: Advances in the UML for Real-Time Systems, Third Edition. Addison Wesley, 2004. 752 p.

35. Douglass B. P. UML Statecharts// Embedded Systems Programming. 2001. № 2. 70-85 pp.

36. Douglass B. P. State Machines and Statecharts, Part 1, 2. Embedded Systems Conference, Boston, 2001.

37. Douglass B. P. State Machines and Statecharts, Part 3: Advanced State Machines and Reactive Systems. Embedded Systems Conference, Fall, 1998.

38. Du D.Z., Ко K.I. Problem Solving in Automata, Languages, and Complexity. John Wiley & Sons, 2003. 338 p.

39. Eriksson H., Penker M., Lyons В., Fado D. UML 2.0 Toolkit. John Wiley & Sons, 2004. 547 p.

40. Favre L. UML and Unified Process. IRM Press, 2003. 418 p.

41. Fetter R. Hardware/Software Codesign for Next-Generation Embedded Systems. Embedded Systems Conference, Boston, 2001.

42. Finkel R. A. Advanced Programming Language Design. Addison Wesley, 1996.-370 p.

43. Fowler M., Scott К. UML Distilled, Second Edition. A Brief Guide to the Standard Object Modeling Language. Addison Wesley, 1999. 224 p.

44. Frankel D. Model-Driven Architecture. Applying MDA to Enterprise Computing. John Wiley & Sons, 2003. 353 p.

45. Grazebrook A. Model Management in Real-time Studio. ARTiSAN Software Tools, 2002. 24 p.

46. Gomaa H. Designing Real-Time and Embedded Systems with the COMET/UML method// Real-Time Systems Magazine. 2001. № 12. 44-50 pp.

47. Gomaa H. Software Design Methods for Real-Time Systems. SEI Curriculum Module SEI-CM-22-1.0, December 1989.

48. Gullekson G. Designing for Concurrency and Distribution with Rational Rose® RealTime. Rational Software White Paper, www.rational.com.

49. Hause M. Appling Systems Engeneering Principles To Embedded Systems. ARTiSAN Software Tools, 2002. 23 p.

50. Hayes J., Ganesh Babu T. Modeling and Analysis of Telecommunications Networks. John Wiley & Sons, 2004. 413 p.

51. Hopcroft J., Motwani R., Ullman J. Introduction to automata theory, languages, and computation, Second Edition. Addison Wesley, 2001. 536 P• 56. Hutcherston M. Software Testing Fundamentals: Methods and Metrics. John

52. Wiley & Sons, 2003. 408 p.

53. Jain R. The Art of Computer Systems Performance Analysis: Techniques for Experimental Design, Measurement, Simulation, and Modeling. John Wiley & Sons, 1991.- 720 p.

54. Katoen J. P. Concepts, Algorithms and Tools for Model Checking. Lectures for Informatics. Friedrich-Alexander University, 2000. 292 p.

55. Kleppe A., Warmer J. Object Constraint Language, The: Getting Your Models Ready for MDA, Second Edition. Addison Wesley, 2003. 240 p.

56. Kleppe A., Warmer J., Bast W. MDA Explained: The Model Driven Architecture: Practice and Promise. Addison Wesley, 2003. 192 p.

57. Kratochvil M., McGibbon M. UML Xtra-Light: How to Specify Your Hardware Requirements. Cambridge University Press, 2003. 106 p.

58. Labrosse J. J. Guaranteeing Real-Time Performance Using RMA, Summer, 2000.

59. Landin N. The Formal Approach for Real-Time Design// Real-Time Systems Magazine. 1999. № 1. 25-28 pp.

60. Larman C. Applying UML and Patterns, Second Edition. Prentice Hall, 2002.-616 p.

61. Li Q., Yao C. Real-Time Concept for Embedded Systems. CMP Books, 2003.-294 p.

62. Mathai J. Real-Time Systems: Specification, Verification and Analysis. Prentice Hall, 1996. 290 p.

63. McNutt S. DSP Systems Design Goes Object-Oriented// Communication Systems Design. 1999. № 7. 27-34 pp.

64. Mellor S.J. Real-Time Development with the Shlaer-Mellor Method. Embedded Systems Conference, Spring, 2000.

65. Mellor S.J., Balcer M. J. Executable UML: A Foundation for Model-Driven Architecture. Addison Wesley, 2002. — 416 p.

66. Mellor S.J., Scott K., Uhl A., Weise D. MDA Distilled: Principles of Model

67. Driven Architecture. Addison Wesley, 2004. 161 p.

68. Mills K. L. Automated Generation Of Concurrent Designs For Real-Time Software. Dissertation, George Mason University, 1995. 152 p.

69. Mills K., Gomaa H. Knowledge-Based Automation of a Design Method for Concurrent Systems// IEEE Transactions on Software Engeneering. Vol. 28-3, 2002. 228-255 pp.

70. Moore A. Describing and Analysing Quality of Service using UML// RealTime Systems Magazine. 2001. №3. 72-77 pp.

71. Moore A. Real-Time UML// Embedded Systems Engeneering Magazine. 2001. №6. 27-32 pp.

72. Moore A. Using UML to Design an Embedded System Introduction// RealTime Systems Magazine. 2001. № 2. 95-98 pp.

73. Peckham J., Lloyd S. Practicing Software Engineering in the 21st Century. IRM Press, 2003.-326 p.

74. Pender T. UML 2.0 Bible. John Wiley & Sons, 2003. 940 p.

75. Quatrani T. Visual Modeling with Rational Rose 2000 and UML, Second Edition. Addison Wesley, 1999. 288 p.

76. Rational® PurifyPlus RealTime Datasheet, www.rational.com.

77. Rational Rose RealTime Software Datasheet, www.rational.com.

78. Rational Test RealTime Datasheet, www.rational.com.

79. Robinson S. Simulation: The Practice of Model Development and Use. John Wiley & Sons, 2004. 338 p.

80. Sedgewick R. Algorithms. Addison Wesley, 1984. 560 p.

81. Sinan Si Alhir. Learning UML. O'Reilly, 2003. 252 p.

82. Sinan Si Alhir. UML in a Nutshell. O'Reilly, 2000. 287 p.

83. Schmidt D., Stal M., Rohnert H., Buschmann F. Pattern-Oriented Software Architecture, Patterns for Concurrent and Networked Objects, Volume 2. John Wiley & Sons, 2000. 633 p.

84. Seacord R, Plakosh D, Lewis G. Modernizing Legacy Systems: Software Technologies, Engineering Processes, and Business Practices. Addison Wesley, 2003.-352 p.

85. Selic B. Architectural Patterns for Complex Real-Time Software, Spring, 1999.

86. Selic B. Complete High Performance Code Generation from UML Models, Summer, 2000.

87. Selic B. Designing for Concurrency Using Objects, Spring, 1999.

88. Selic B. The Real-Time UML Standard: Definition and Application, Part 1, 2. Embedded Systems Conference, Boston, 2001.

89. Selic В. UML Point/Counterpoint: How to Simplify Complexity// Embedded Systems Programming. 2000. № 4. 12-15 pp.

90. Slonner K., Kurtz B. Formal Syntax and Semantics of Programming Languages. A Laboratory Based Approach. Addison Wesley, 1995. 653 p.

91. Sridhar T. Designing Embedded Communication Software. CMP Books, 2003.-203 p.

92. Stewart D. B. Designing Software Components for Real-Time Applications, Part 1. Embedded Systems Conference, Fall, 1998.

93. Stewart D. B. Designing Software Components for Real-Time Applications, Part 2. Embedded Systems Conference, Fall, 2000.

94. The concept of IAR visualSTATE. www.iar.com.

95. UML Profile for Schedulability, Performance and Time, ptc2004-02-01. Object Management Group, 2003, www.omg.org.

96. Unified Modeling Language: Superstructure, Version 2.0. ptc/03-08-02. Needham, MA: OMG, 2003, www.omg.org.

97. Whitbread M. Telelogic Tau generates code from UML 2.0// Embedded Systems Engeneering Magazine. 2000. № 5. 26-30 pp.

98. Wieringa R. Design Methods for Reactive Systems: Yourdon, Statemate, and the UML. Morgan Kaufmann Publishers, 2003. 457 p.