МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Разработка системы реального времени в виде планировщика исполнения заданий

    обработки этих показаний на компьютере, и, наконец, компьютер с программой,

    реагирующей на события, происходящие на объекте. Операционная система

    реального времени ориентирована на обработку внешних событий. Именно это

    приводит к коренным отличиям (по сравнению с ОС общего назначения) в

    структуре системы, в функциях ядра, в построении системы ввода-вывода.

    Операционная система реального времени может быть похожа по

    пользовательскому интерфейсу на ОС общего назначения (к этому, кстати,

    стремятся почти все производители операционных системах реального времени),

    однако устроена она совершенно иначе – более подробно об этом в пункте 2.2.

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

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

    называемых "глубоко встроенных" (deeply embedded) применениях. К таким

    компьютерным системам предъявляются два основных требования: малые габариты

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

    ставят две проблемы на пути применения серийных ОС РВ: небольшие объемы

    используемой памяти и отсутствие "лишних" интерфейсов, по которым можно

    было бы связать целевую и инструментальную машины на этапе разработки

    встроенного ПО.

    По структурным характеристикам программно-аппаратные комплексы можно

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

    реального времени, Unix’ы реального времени.

    5. Вывод.

    Были рассмотрены центральные отличия систем реального времени от

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

    подобным системам – предсказуемость. Пользователи СРВ должны быть заранее

    уверены в том, что отклик на внешнее воздействие будет получен в

    обозначенный интервал времени. Это влечет за собой необходимость

    представлять себе какие объёмы данных несут в себе внешние воздействия и

    какими аппаратными возможностями по обработке этих данных располагает

    система. Вполне логично, что системы реального времени не ориентированы на

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

    критичных точках инженерных систем.

    2. Особенности управления задачами.

    1. Управление временем.

    Одним из основных свойств операционных систем реального времени

    является их способность изолировать друг от друга приложения, поэтому если

    в программе возникает сбой или выполняются какие-то нелегальные операции,

    ОС может быстро блокировать программу, инициировать восстановление и защиту

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

    Если не выполняется обработка критических ситуаций либо она происходит

    недостаточно быстро, система жесткого реального времени прерывает операцию

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

    системы. Системы мягкого реального времени более «снисходительны» и

    «терпят» определенные, некритичные ошибки.

    Особую важность приобретают такие инструменты как средства работы с

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

    Развитость этих средств - необходимый атрибут операционных систем реального

    времени. Они, как правило, позволяют:

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

    . генерировать прерывания по истечении временных интервалов,

    . создавать разовые и циклические будильники.

    2. Управление памятью.

    Система реального времени должна уметь управлять памятью в зависимости

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

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

    жизнедеятельности и освобождения.

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

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

    Та же самая защита предотвращает переполнение стеков памяти, вызываемое

    действиями любых программ.

    3. Управление доступом (синхронизация).

    При одновременной работе нескольких процессов в многозадачной системе

    реального времени операционная система должна обеспечить устойчивый

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

    процессами (Interprocess communication, сокращенно IPC) является ключом к

    разработке приложений как совокупности процессов, в которых каждый процесс

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

    Для операционных систем реального времени характерна развитость IPC-

    механизмов. К таким механизмам относятся: семафоры, события, сигналы,

    средства для работы с разделяемой памятью, каналы данных (pipes), очереди

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

    назначения, но их реализация в операционных системах реального времени

    имеет свои особенности - время исполнения системных вызовов почти не

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

    времени есть по крайней мере один быстрый механизм передачи данных от

    процесса к процессу.

    4. Вывод.

    Так же как сами системы реального времени существенно отличаются от

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

    Работа по управлению их выполнением превращается в сложную инженерную

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

    системы, планирования их независимого выделения и освобождения для задач

    системы.

    3. Классификация систем реального времени.

    Количество операционных систем реального времени, несмотря на их

    специфику, очень велико. В обзоре журнала "Real-Time Magazine" ещё за март

    97 года было упомянуто около шестидесяти систем. За прошедшие годы этих

    систем стало ещё больше. Если же добавить к их числу некоммерческие

    операционные системы реального времени, то мы получим вполне солидное

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

    системах. Однако сама специфика применения операционных систем реального

    времени требует гарантий надежности, причем гарантий в том числе и

    юридических - этим, видимо, можно объяснить тот факт, что среди

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

    На рис. 5 дано компактное представление классификации систем по трём

    различным признакам: класс (отсутствие РВ, мягкое РВ, жесткое РВ),

    сложность (одноадресное пространство, многоадресное/защищенное),

    стандартизация (частное решение, подмножество POSIX, только POSIX, UNIX и

    POSIX).

    1. Классификация по структурным характеристикам.

    В мире операционных систем реального времени, как впрочем и в любой

    другой динамично развивающейся отрасли, в которой ещё нет установившейся

    достаточно строгой теории, существует несколько разнообразных подходов к

    построению подобных систем.

    1. Исполнительные системы реального времени.

    Признаки систем этого типа - различные платформы для систем разработки

    и исполнения. Приложение реального времени разрабатывается на host-

    компьютере (компьютере системы разработки), затем компонуется с ядром и

    загружается в целевую систему для исполнения. Как правило, приложение

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

    помощью нитей (threads).

    Системы этого типа обладают рядом достоинств, среди которых главное -

    скорость и реактивность системы. Главная причина высокой реактивности

    систем этого типа - наличие только нитей(потоков) и, следовательно,

    маленькое время переключения контекста между ними ( в отличие от

    процессов).

    С этим главным достоинством связан и ряд недостатков: зависание всей

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

    приложений.

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

    дороги (порядка $20000). Хотя, надо отметить, что качество и

    функциональность систем разработки в этом классе традиционно хороши, так

    как они были изначально кроссовыми.

    Наиболее ярким представителем систем этого класса является

    операционная система VxWorks. Область применения - компактные системы

    реального времени с хорошими временами реакций.

    2. Ядра реального времени

    В этот класс входят системы с монолитным ядром, где и содержится

    реализация всех механизмов реального времени этих операционных систем.

    Исторически системы этого типа были хорошо спроектированы. В отличие от

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

    "наращивали мускулы" благодаря первым удачным реализациям (исполнительные

    системы реального времени и UNIX'ы реального времени), разработчики систем

    этого класса имели время для разработки систем именно реального времени и

    не были изначально ограничены в выборе средств (например фирма "Microware"

    имела в своем распоряжении три года для разработки первого варианта OS-9).

    Одна из их особенностей - высокая степень масштабируемости. На базе

    этих ОС можно построить как компактные системы реального времени, так и

    большие системы серверного класса.

    Как правило, ядра реального времени имеют два типа систем разработки -

    кроссовую и резидентную.

    Системы этого класса, как правило, модульны, хорошо структурированы,

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

    компактны и предсказуемы. Наиболее популярные системы этого класса: OS9,

    QNX.

    3. UNIX'ы реального времени

    Исторически системы реального времени создавались в эпоху расцвета и

    бума UNIX'а и поэтому многие из них содержат те или иные заимствования из

    этой красивой концепции операционный системы (пользовательский интерфейс,

    концепция процессов и т.д.).

    Часть разработчиков операционных систем реального времени попыталась

    просто переписать ядро UNIX, сохранив при этом интерфейс пользовательских

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

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

    текстам ядра, а результат оказался замечательным. Получили и реальное

    время, и сразу весь набор пользовательских приложений - компиляторы,

    пакеты, различные инструментальные системы.

    В этом смысле создателям систем первых двух классов пришлось

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

    систем разработки.

    Однако Unix'ы реального времени не избавлены от следующих недостатков:

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

    ниже, чем реактивность систем первых двух классов.

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

    операционная система реального времени LynxOS.

    2. Классификация по программной среде.

    Становится очевидным то, что задачи реального времени необходимо

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

    соответствии с [12] системы реального времени можно разделить на 4 класса.

    1. Программирование на уровне микропроцессоров.

    В данном случае программы для программируемых микропроцессоров,

    встраиваемых в различные устройства, очень небольшие и обычно написаны на

    языке низкого уровня типа ассемблера или PLM. Внутрисхемные эмуляторы

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

    программ не применимы. Операционная среда обычно недоступна.

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

    На более высоком уровне находятся системы реального времени,

    обеспечивающие минимальную среду исполнения. Предусмотрены лишь основные

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

    представляет собой набор программ, выполняющих типичные, необходимые для

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

    запятой и минимальный сервис ввода/вывода. Прикладная программа

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

    встроенных системах.

    3. Ядро системы реального времени и инструментальная среда.

    Этот класс систем обладает многими чертами ОС с полным сервисом.

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

    системах. Этот тип систем обеспечивает гораздо более высокий уровень

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

    средства, как дистанционный символьный отладчик, протокол ошибок и другие

    средства. Часто доступно параллельное выполнение программ.

    4. ОС с полным сервисом.

    Такие ОС могут быть применены для любых приложений реального времени.

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

    системы.

    Системы 2 и 3 классов принято называть системами "жесткого" реального

    времени, а 4 класса - "мягкого". Очевидно, это можно объяснить тем, что в

    первом случае к системе предъявляются более жесткие требования по времени

    реакции и необходимому объему памяти, чем во втором. Как мы видим, среда

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

    разделены, а требования, предъявляемые к ним, весьма различны. Рассмотрим

    их более подробно.

    3. Технические характеристики ОС РВ.

    1. Время реакции системы.

    Почти все производители систем реального времени приводят такой

    параметр, как время реакции системы на прерывание (interrupt latency).

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

    способность вовремя отреагировать на внешние события, то такой параметр,

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

    к сожалению, общепринятых методологий измерения этого параметра, поэтому он

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

    времени. Есть надежда, что в скором времени положение изменится, так как

    уже стартовал проект сравнения операционных системах реального времени,

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

    События, происходящие на объекте, регистрируются датчиками, данные с

    датчиков передаются в модули ввода-вывода (интерфейсы) системы. Модули

    ввода-вывода, получив информацию от датчиков и преобразовав ее, генерируют

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

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

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

    Интервал времени - от события на объекте и до выполнения первой инструкции

    в программе обработки этого события и является временем реакции системы на

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

    вычислять этот интервал.

    Время выполнения цепочки действий - от события на объекте до генерации

    прерывания - никак не зависит от операционных систем реального времени и

    целиком определяется аппаратурой, а вот интервал времени - от возникновения

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

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

    компьютера. Причем это время нужно уметь оценивать в худшей для системы

    ситуации, то есть в предположении, что процессор загружен, что в это время

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

    действия, блокирующие прерывания.

    Неплохим основанием для оценки времен реакции системы могут служить

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

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

    какие промежутки времени измерялись. Некоторые производители операционных

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

    не увидишь в рекламных проспектах, но можно отыскать на WEB-страницах, в

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

    независимое тестирование.

    Время реакции на прерывание, характерное для некоторых операционных

    систем реального времени, представлено на диаграмме 6.

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

    В операционные системы реального времени заложен параллелизм,

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

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

    (многопроцессными, многонитиевыми). Для того чтобы уметь оценивать

    накладные расходы системы при обработке параллельных событий, необходимо

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

    к процессу (от задачи к задаче, от нити к нити), то есть время переключения

    контекста (диаграмма 7).

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

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

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

    приложения системного набора (ядро, системные модули, драйверы и т. д.).

    Хотя, надо признать, что с течением времени значение этого параметра

    уменьшается, тем не менее он остается важным и производители систем

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

    модулей системы были невелики.

    Примеры: размер ядра операционной системы реального времени OS-9 на

    микропроцессорах МС68xxx - 22 KB, VxWorks - 16 KB.

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

    Это свойство операционных систем реального времени - одно из базовых.

    Оно позволяет создавать компактные встроенные СРВ повышенной надёжности, с

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


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.