Разработка системы реального времени в виде планировщика исполнения заданий
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: дипломы бесплатно, шпаргалки по философии
| Добавил(а) на сайт: Кокорин.
Предыдущая страница реферата | 8 9 10 11 12 13 14 15 16 17 18 | Следующая страница реферата
5. Вывод.
Системы реального времени в настоящий момент являются востребованным продуктом на рынке программного обеспечения. Существует целая гамма средств данного направления, покрывающая практически весь спектр возможных применений подобных систем повышенной надежности.
5. Методология разработки программного обеспечения.
Возрастающая сложность современного программного обеспечения привела к
созданию специальной научной дисциплины — компьютерной инженерии (Software
Engineering), основной задачей которой является создание эффективных
методов разработки сложных программных систем.
1. История развития.
Объектно-ориентированные методологии разработки программного
обеспечения (первое направление) стали интенсивно развиваться с конца 80-х
годов. В 1997 г. OMG (Object Management Group) приняла UML, появившийся в
результате слияния ряда известных методологий, в качестве стандарта языка
объектно-ориентированного моделирования. Еще одним объектно-ориентированным
подходом является методология ROOM, созданная для разработки систем
реального времени. Одновременно в течение последних 20 лет международным
комитетом ITU развиваются стандарты для разработки телекоммуникационных
систем (второе направление): SDL, MSC и т.д. Кроме того, с 70-х годов
развиваются структурные методологии разработки программного обеспечения
(третье направление): SADT, IDEF-стандарты, метод Йордана и т.д. В
настоящее время эти методологии прочно закрепились в области разработки
информационных систем. Они являются эффективным средством анализа систем в
целом и успешно применяются.
В данной работе описывается объектно-ориентированная методология Real.
Методология Real основывается, главным образом, на UML, SDL, ROOM и
отражает перечисленные интеграционные тенденции. Помимо стандартных для
объектно-ориентированного подхода черт в Real добавлены дополнительные
возможности, направленные на две специальные области программного
обеспечения: для информационных систем и для систем реального времени.
Естественно, что Real не претендует на то, чтобы покрыть все
возможности программных продуктов соответствующих областей. В то же время, учитывая современный уровень развития локальных и глобальных информационных
сетей и возрастающую сложность программного обеспечения, в информационных
системах все большую популярность приобретает технология клиент-сервер, т.е. многие информационные системы приобретают ярко выраженный событийно-
ориентированный аспект, который глубоко проработан в методологиях
разработки программного обеспечения систем реального времени. С другой
стороны, большие распределенные системы реального времени нуждаются, как
правило, в хранении, доступе и передаче огромного количества информации
(например, тарификационной и аутентификационной), а не только управляющих
сигналов и данных трафика. Таким образом, методология Real подходит для
разработки программного обеспечения обеих областей, но наиболее эффективна
для их пересечения.
2. Разработка программного обеспечения систем реального времени
Основное назначение Real применительно к системам реального времени — проектирование сложной управляющей логики с последующей возможностью автоматической генерации кода. Отметим, что методология Real не ориентирована специальным образом на разработку оборудования и программного обеспечения, непосредственно с ним контактирующего (драйверов устройств и т.п.), а также сетевых протоколов нижнего уровня. Однако мы считаем, что для этих задач она подходит примерно в той же степени, как и UML.
Как показывает практика, прямые ветки сложных алгоритмов достаточно удобно и наглядно определять с помощью сценариев. На начальных этапах разработки системы нужно четко определить логику всех взаимодействий. При этом правила поведения системы в ошибочных ситуациях в большинстве случаев можно доработать позднее. По сценариям можно сгенерировать STD- или SDL- диаграммы и продолжить создание спецификаций уже в этом стиле, учитывая все допустимые варианты поведения системы.
В терминах Real основной структурной единицей системы реального
времени является объект. Объекты взаимодействуют друг с другом через
интерфейсы. Под взаимодействием понимается посылка сообщений, вызов методов
и обращение к атрибутам интерфейса. Поскольку в последнее время все большее
число систем реального времени становятся распределенными и сетевыми, понятие интерфейса приобретает особую важность. Раньше ситуация была иной, примером чего служат ранние версии языка SDL, в которых интерфейсы
отсутствовали. Интерфейсы Real сильно отличаются от портов (gate) SDL
(составом, способом связи с классами) и интерфейсов UML (составом, способом
связи с классами, способом изображения), а также интерфейсов в ROOM
(составом и способом изображения).
В системах реального времени важную роль играют абстракции точек входа и выхода у различных компонент программного обеспечения. Поэтому в модель классов Real был добавлен из ROOM специальный элемент — порт.
Компонента программного обеспечения, определенная в виде класса с портами и интерфейсами, может иметь конечно-автоматное поведение, описываемое в терминах поведенческой модели Real. Поведенческая модель, в свою очередь, представляется двумя альтернативными нотациями: первая основана на варианте STD, представленном в ROOM, вторая — на расширенном конечном автомате SDL. С помощью STD-нотации удобно определять поведение компонент системы на ранних этапах разработки: множество мелких деталей можно временно убрать из поля зрения. В то же время на SDL-диаграммах можно наглядно изобразить мельчайшие подробности алгоритмов.
Эта возможность становится полезной на поздних этапах проектирования.
При этом информацию, изображенную на STD-диаграммах, можно ”загрузить” на
SDL-диаграммы, таким образом, результаты ранних этапов при переходе к более
формальной спецификации не будут потеряны. В рамках Real, STD и SDL нотации
предназначены для описания единой поведенческой модели, так что всегда
возможно и обратное — загрузка на STD-диаграмму результатов работы с SDL-
редактором. На поведенческую модель Real сильно повлияла технология
SDL/PLUS 20: так же не используются типы данных и выражения SDL, но
применяется более гибкая стратегия связи с языками реализации [7] вместо
заранее фиксированного языка [11].
3. Вывод.
Использование специальной событийно-ориентированной методологии разработки программного продукта поможет улучшить стройность организации прикладного приложения и, в целом, хорошо отразится на надежности создаваемой системы реального времени.
6. Постановка задачи курсового проекта.
Перед созданием программной системы реального времени был проведен анализ действующих в данный момент разработок данного направления. Он показал, что существующий спектр ОС может обеспечить все потребности задач реального времени. Выбор системы (если абстрагироваться от цены, условий поставки и т.д.) диктуется только тем обстоятельством, удовлетворяет ли она условиям стоящей задачи. Например, если необходима хорошая операционная поддержка сетевых средств, то целесообразно использовать QNX - многозадачную операционную систему жесткого реального времени с архитектурой на основе микроядра. Если необходима очень высокая скорость реакции системы, можно использовать VxWorks. В данной работе при создании очень небольшой, не слишком сложной, встроенной прикладной программы было решено ориентироваться LynxOS, относящуюся к классу Unix’ов реального времени.
В разработке будут использованы только базовые, обязательные механизмы
ОСРВ. Кроме того, почти в каждой операционной системе реального времени
можно найти целый набор дополнительных, специфических только для нее
механизмов, касающихся системы ввода-вывода, управления прерываниями, работы с памятью. Каждая система содержит также ряд средств, обеспечивающих
ее надежность, например, встроенные механизмы контроля целостности кодов.
Главный же вывод состоит в том, что любая задача реального времени требует операционной поддержки реального времени, и иные системные решения при этом неприемлемы. На основе ОС общего назначения UNIX, ориентированной на оптимальное распределение ресурсов компьютера между пользователями и задачами (система разделения времени) будет создана программная разработка планировщика задач, в котором главной целью является успеть среагировать на происходящие события в жестко заданный интервал времени (система реального времени).
На основе планировщика будет реализован протокол, требующий поддержки
реального времени. Для проектирования его реализации будет использована
объектно-ориентированная методология. Такая методология характеризует
скорее подход к планированию приложения, чем используемые средства языка, т.к. в авиационных системах, к которым и принадлежит реализуемый протокол
A415 ARINC, не разрешено использование памяти из «кучи». В то время как
динамическое выделение памяти является немаловажной частью использования
языков, подобных C++ или Java.
2. Модели и методы предметной области.
1. Определения.
Сначала рассмотрим основное определение, вокруг которого и построена
данная работа. Оно дано американским учёным Дональдом Гиллисом (Donald
Gillies).
Рекомендуем скачать другие рефераты по теме: реферат ссср, скачать шпоры.
Категории:
Предыдущая страница реферата | 8 9 10 11 12 13 14 15 16 17 18 | Следующая страница реферата