2. найти, подготовить и загрузить затребованную задачу;
3. запустить новую задачу, для этого
а) восстановить из оперативной памяти регистры новой задачи (сохраненные ранее,
если она до этого уже работала);
б) загрузить в процессор инструкции новой задачи.
Каждая из этих стадий вносит свой вклад в задержку при переключении контекста. Поскольку любое приложение реального времени должно обеспечить выдачу результата в заданное время, то эта задержка должна быть мала, детерминирована и известна. Это число является одной из важнейших характеристик ОСРВ. Обычно время переключения контекста в ОСРВ составляет 10-20 мкс.
Для систем реального времени важным параметром является размер системы исполнения, а именно суммарный размер минимально необходимого для работы приложения системного набора (ядро, системные модули, драйверы и т. д.). Хотя, надо признать, что с течением времени значение этого параметра уменьшается, тем не менее, он остается важным и производители систем реального времени стремятся к тому, чтобы размеры ядра и обслуживающих модулей системы были невелики.
Важным параметром при оценке ОСРВ является набор инструментов, механизмов реального времени, предоставляемых системой.
Базовыми инструментами разработки сценария работы системы являются система приоритетов процессов (задач) и алгоритмы планирования (диспетчеризации) ОСРВ.
В многозадачных ОС общего назначения используются, как правило, различные модификации алгоритма круговой диспетчеризации, основанные на понятии непрерывного кванта времени ("time slice"), предоставляемого процессу для работы. Планировщик по истечении каждого кванта времени просматривает очередь активных процессов и принимает решение, кому передать управление, основываясь на приоритетах процессов (численных значениях, им присвоенных). Приоритеты могут быть фиксированными или меняться со временем - это зависит от алгоритмов планирования в данной ОС, но рано или поздно процессорное время получат все процессы в системе.
Алгоритмы круговой диспетчеризации неприменимы в чистом виде в ОСРВ. Основной недостаток - непрерывный квант времени, в течение которого процессором владеет только один процесс. Планировщики же ОСРВ имеют возможность сменить процесс до истечения "time slice", если в этом возникла необходимость. Один из возможных алгоритмов планирования при этом "приоритетный с вытеснением". Мир ОСРВ отличается богатством различных алгоритмов планирования: динамические, приоритетные, монотонные, адаптивные и пр., цель же всегда преследуется одна - предоставить инструмент, позволяющий в нужный момент времени исполнять именно тот процесс, который необходим.
Другой набор механизмов реального времени относится к средствам синхронизации процессов и передачи данных между ними. Для ОСРВ характерна развитость этих механизмов. К таким механизмам относятся: семафоры, мьютексы, события, сигналы, средства для работы с разделяемой памятью, каналы данных (pipes), очереди сообщений. Многие из подобных механизмов используются и в ОС общего назначения, но их реализация в ОСРВ имеет свои особенности - время исполнения системных вызовов почти не зависит от состояния системы, и в каждой ОСРВ есть по крайней мере один быстрый механизм передачи данных от процесса к процессу.
Такие инструменты, как средства работы с таймерами, необходимы для систем с жестким временным регламентом, поэтому развитость средств работы с таймерами - необходимый атрибут ОСРВ. Эти средства, как правило, позволяют:
измерять и задавать различные промежутки времени (от 1 мкс и выше),
генерировать прерывания по истечении временных интервалов,
создавать разовые и циклические будильники
Здесь описаны только базовые, обязательные механизмы, использующиеся в ОСРВ. Кроме того, почти в каждой ОСРВ можно найти целый набор дополнительных, специфических только для нее механизмов, касающийся системы ввода-вывода, управления прерываниями, работы с памятью. Каждая система содержит также ряд средств, обеспечивающих ее надежность: встроенные механизмы контроля целостности кодов, инструменты для работы с таймерами.
Монолитная архитектура
ОСРВ с монолитной архитектурой можно представить в виде (рис. 1.1)
прикладного уровня: состоит из работающих прикладных процессов;
системного уровня: состоит из монолитного ядра операционной системы, в котором можно выделить следующие части: интерфейс между приложениями и ядром (API), собственно ядро системы, интерфейс между ядром и оборудованием (драйверы устройств).
Рис. 1.1. ОСРВ с монолитной архитектурой
Интерфейс в таких системах играет двойную роль:
1. управление взаимодействием прикладных процессов и системы,
2. обеспечение непрерывности выполнения кода системы (т.е. отсутствие переключения задач во время исполнения кода системы).
Основным преимуществом монолитной архитектуры является ее относительная быстрота работы по сравнению с другими архитектурами. Однако, достигается это, в основном, за счет написания значительных частей системы на ассемблере.
Недостатки монолитной архитектуры.
1. Системные вызовы, требующие переключения уровней привилегий (от пользовательской задачи к ядру), должны быть реализованы как прерывания или специальный тип исключений. Это сильно увеличивает время их работы.
2. Ядро не может быть прервано пользовательской задачей (non-preemptable). Это может приводить к тому, что высокоприоритетная задача может не получить управления из-за работы низкоприоритетной.
3. Сложность переноса на новые архитектуры процессора из-за значительных ассемблерных вставок.
4. Негибкость и сложность развития: изменение части ядра системы требует его полной перекомпиляции.
Модульная архитектура (на основе микроядра)
Модульная архитектура появилась, как попытка убрать интерфейс между приложениями и ядром и облегчить модернизацию системы и перенос ее на новые процессоры.
Теперь микроядро играет двойную роль(рис 1.2):
... первичной или первичной вместе со вторичной или только вторичной И. Если это - итог обработки информации, решения задачи, то такая информация называется результативной, результирующей. В процессе решения задач возникает промежуточная информация, которая часто в автоматизированных системах играет самостоятельную роль, определения направления путей завершения решения задачи. Результатная информация ...
... , практически, не используются. Проблема информатизации Минторга может быть решена путем создания Автоматизированной Информационной системы Министерства Торговли РФ (АИС МТ РФ) в соответствии с настоящим Техническим предложением. ГЛАВА 2. МАТЕМАТИЧЕСКОЕ ОБЕСПЕЧЕНИЕ КОМПЛЕКСА ЗАДАЧ "СИСТЕМА ДОКУМЕНТООБОРОТА УЧЕРЕЖДЕНИЯ”. функции поиска и архивации 2.1. Постановка задачи и её спецификация ...
... действий одной из них; • обращение к внешним устройствам только через операционную систему, что позволяет программистам использовать уже написанные драйверы, и не заниматься проблемами обеспечения совместимости с ними вновь разработанных программ; • возможность использования звуковых и видеоприложений. В отличие от Windows З.х новая операционная система не нуждается в установке на компьютере ...
... Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования. М.: Госстандарт СССР. ГОСТ 31078-2002. Защита информации. Испытания программных средств на наличие компьютерных вирусов. Типовое руководство. СТБ ИСО/МЭК 9126-2003. Информационные технологии. Оценка программной продукции. Характеристики качества и руководства по их применению. СТБ ИСО/МЭК ТО ...
0 комментариев