скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыРеферат: Разработка системы реального времени в виде планировщика исполнения заданий

Время реакции на прерывание, характерное для некоторых операционных систем реального времени, представлено на диаграмме 6.

1.3.3.2.    Время переключения контекста.

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

1.3.3.3.    Размеры системы.

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

Примеры: размер ядра операционной системы реального времени OS-9 на микропроцессорах МС68xxx - 22 KB, VxWorks - 16 KB.

1.3.3.4.    Возможность исполнения системы из ПЗУ (ROM).

Это свойство операционных систем реального времени - одно из базовых. Оно позволяет создавать компактные встроенные СРВ повышенной надёжности, с ограниченным энергопотреблением, без внешних накопителей.

1.3.4.  Вывод.

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

1.4.           Современные представители рынка ОС РВ в России.

Среди коммерческих систем реального времени можно выделить группу ведущих систем - по объемам продаж и по популярности. Эти системы: VxWorks, OS9, LynxOS, QNX, pSOS, VRTX. В таблице 8 даны сведения о существующих в настоящее время СРВ и их характерных особенностях. В таблице 4 даны основные характеристики некоторых систем.

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

1.4.1.  LynxOS® 4.x фирмы LinuxWorks, Inc.

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

1.4.1.1.    Основные свойства LynxOS:

·     Поддерживает многозадачные и многопотоковые приложения.

·     LynxOS обеспечивает совместимость с Linux на уровне ABI (Application Binary Interface), уровне форматов объектных файлов, вызовов API, динамически подключаемых библиотек (DLL), компоновки и загрузки на этапе выполнения.  Это свойство LynxOS является уникальным для систем реального времени и очень полезным для пользователей (например в случае отсутствия исходных текстов). Система работает так же с Unix и Java.

·     Полностью поддерживается стандарт POSIX.1003-1, а также подразделы POSIX.1003-1b и POSIX.1003-1c, определяющие расширения реального времени и работы с нитями (потоками).

·     Многоплатформенность. Поддерживает множество аппаратных архитектур (IA-32, PowerPC, MIPS, ARM, XScale, IBM) для оборудования различных фирм производителей.

·     Разработка может осуществляться как на самой целевой системе (self-hosted), так и на инструментальном компьютере (host).

·     Является ОС для ответственных приложений. Имеет всё необходимое для создания современных систем, обладающих свойствами "горячей замены" / "высокой доступности" (Hot Swap, High Availability), и устройств с высоким коэффициентом резервирования.

·     LynxOS-178 - это версия LynxOS, сертифицированная в соответствии со стандартом DO-178. Это означает полное соответствие с точки зрения надежности строгим требованиям для мобильных систем военного и аэрокосмического применения. Кроме того, LynxOS-178 имеет сертифицированный стек TCP/IP для ответственных приложений в области авионики, медицины, атомной промышленности и связи.

·     Большое количество средств разработок как в рамках самой LynxOS, так и host-систем (Linux, Windows, Solaris).

1.4.1.2.    Поддержка приложений жёсткого реального времени.

·     количество задач: неограниченно;

·     количество приоритетов: 256;

·     диспетчеризация задач: вытеснение по приоритетам. 4 алгоритма диспетчеризации (FIFO, Priority Quantum, Round Robin, невытесняемый);

·     детерминированное время переключения контекста благодаря эффективному алгоритму диспетчеризации реального времени;

·     средства межзадачных взаимодействий как в стандарте POSIX (семафоры, разделяемая память, сокеты, сигналы, каналы, мьютексы, условные переменные), так и в терминах Unix SystemV (очереди сообщений, семафоры, разделяемая память);

·     поддержка таймеров реального времени и часов POSIX;

·     конфигурирование квантов времени для различных уровней приоритетов и для разрешения значения единицы (tick) таймера;

·     выполнение задач в защищенном режиме, полная поддержка MMU (Memory Management Unit).

1.4.2.  OS-9/Hawk фирмы Microware Systems.

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

1.4.2.1.    Основные свойства OS-9/Hawk.

·     Переносимая версия OS-9 позволяет применять в проекте наиболее подходящие микропроцессорные устройства (Motorola ColdFire; Motorola M-CORE; Intel Pentium; Intel StrongARM; PowerPC; ARM; Hitachi SuperH; MIPS; MicroSPARC).

·     Система ввода-вывода ОС поддерживает различные форматы устройств массовой памяти и основных интерфейсов периферийных устройств: Raw, MS-DOS, True FFS, CardSoft PCMCIA, USB, IrDA.

·     В среде OS-9 пользователь может выбирать несколько программных коммуникационных платформ: mwSoftStax (Microware), Harris & Jeffries, Trillium, - что ранее было исключительно прерогативой специализированных ОС.

·     В инструментальный пакет Hawk встроена библиотека Tools.h из библиотеки Rogue Wave C++ Classes Lib.

·     Hawk - интегрированная кросс-среда разработки приложений для OS-9 - функционирует на платформе MS Windows NT.

·     Hawk является открытой средой и предоставляет сторонним разработчикам инструментальных средств более сотни API, позволяющих включать в рамках Hawk Partners Program в состав среды Hawk продукты известных фирм разработчиков инструментального ПО.

·     Средство верификации программного обеспечения CodeTEST (Applied Microsystems) встроено в Hawk и представляет собой удобный и эффективный инструментарий трассировки встраиваемого ПО и контроля его характеристик, а также хода выполнения тестов и распределения памяти.

1.4.2.2.    Поддержка приложений жёсткого реального времени.

·     масштабируемое, полностью вытесняемое ядро ОС;

·     поддерживает функционирование до 65535 процессов;

·     предоставляет 65535 уровней приоритета;

·     обеспечивает работу до 255 пользователей;

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

·     характеристики производительности: 5.6 мкс Interrupt Latence Time, 14 мкс для времени переключения контекста процесса (MC68040, 30MHz).

1.4.3.  VxWorks фирмы Wind River Systems.

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

1.4.3.1.    Основные свойства VxWorks.

·     Поддерживаемые целевые архитектуры (targets):            Motorola 680х0 и CPU32, PowerPC; Intel 386/486/Pentium, Intel 960; Sparc, Mips R3000/4000; AMD 29K, Motorola 88110; HP PA-RISC; Hitachi SH7600; DEC Alpha.

·     Поддерживаемые инструментальные платформы (hosts):           Sun SPARCstation (SunOS и Solaris); HP 9000/400,700 (HP-UX); IBM RS6000 (AIX); Silicon Graphics (IRIX); DEC Alpha (OSF/1); PC (Windows).

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

·     В последней версии VxWorks 5.2 реализованы совместимые с расширениями POSIX для приложений реального времени (POSIX Real-Time Extensions 1003.1b) функции асинхронного ввода-вывода, счётные семафоры, очереди сообщений, сигналы, управление памятью (блокировка страниц), управление диспетчеризацией, часы и таймеры.

·     Стандартным языком программирования в инструментальном комплексе VxWorks является язык С. Система программирования на языке C++ не входит в стандартную конфигурацию инструментального комплекса VxWorks и поставляется как дополнительный продукт. Система программирования на языке Ada для VxWorks поставляется почти всеми Ada-производителями.

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

1.4.3.2.    Поддержка приложений жёсткого реального времени.

·     Построена по технологии микроядра.

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

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

1.4.4.  QNX4 фирмы ОРАКУЛ.

QNX4 — многозадачная многопользовательская операционная система жесткого реального времени (ОСРВ) с архитектурой на основе микроядра и поддержкой ряда стандартов семейства POSIX.

1.4.4.1.    Основные свойства QNX4.

·     Состоит из микроядра и набора необязательных модулей.

·     Предоставляет сервисы стандарта POSIX.1 и его расширения для систем реального времени POSIX.1b (POSIX.4).

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

·     Предоставляемое QNX4 окружение защищенного режима дает возможность легко и безопасно тестировать свои новые модули расширения.

·     Возможности высокоскоростной трассировки диагностических событий.

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

1.4.4.2.    Поддержка приложений жёсткого реального времени.

·     Являясь истинно микроядерной ОС, QNX4 строится вокруг компактного высоконадежного «стержня» - имеет микроядро размером всего 10 Кбайт.

·     Микроядро QNX4 обладает достаточно малыми размерами для встраивания в ПЗУ.

·     Обладает достаточно большой мощностью для управления распределенной сетью, содержащей нескольких сотен процессоров.

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

1.4.5.  Вывод.

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

1.5.           Методология разработки программного обеспечения.

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

1.5.1.  История развития.

Объектно-ориентированные методологии разработки программного обеспечения (первое направление) стали интенсивно развиваться с конца 80-х годов. В 1997 г. OMG (Object Management Group) приняла UML, появившийся в результате слияния ряда известных методологий, в качестве стандарта языка объектно-ориентированного моделирования. Еще одним объектно-ориентированным подходом является методология ROOM, созданная для разработки систем реального времени. Одновременно в течение последних 20 лет международным комитетом ITU развиваются стандарты для разработки телекоммуникационных систем (второе направление): SDL, MSC и т.д. Кроме того, с 70-х годов развиваются структурные методологии разработки программного обеспечения (третье направление): SADT, IDEF-стандарты, метод Йордана и т.д. В настоящее время эти методологии прочно закрепились в области разработки информационных систем. Они являются эффективным средством анализа систем в целом и успешно применяются.

В данной работе описывается объектно-ориентированная методология Real. Методология Real основывается, главным образом, на UML, SDL, ROOM и отражает перечисленные интеграционные тенденции. Помимо стандартных для объектно-ориентированного подхода черт в Real добавлены дополнительные возможности, направленные на две специальные области программного обеспечения: для информационных систем и для систем реального времени.

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

Страницы: 1, 2, 3, 4, 5, 6, 7


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

© 2010.