Разработка системы реального времени в виде планировщика исполнения заданий
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: дипломы бесплатно, шпаргалки по философии
| Добавил(а) на сайт: Кокорин.
Предыдущая страница реферата | 10 11 12 13 14 15 16 17 18 19 20 | Следующая страница реферата
2. Ядро систем реального времени.
Кроме свойств среды исполнения, необходимо рассмотреть также сервис, предоставляемый ядром ОС реального времени. Ядро или диспетчер является основой любой среды исполнения в реальном времени. Микроядро реализует базовые функции операционной системы, на которые опираются системные сервисы и приложения. В системе реального времени диспетчер занимает место между аппаратными средствами целевого компьютера и прикладным программным обеспечением. В результате, такие важные компоненты ОС как файловая система, сетевая поддержка и т. д. превращаются в по-настоящему независимые модули, которые функционируют как отдельные процессы и взаимодействуют с ядром и друг с другом на общих основаниях. Все компоненты системы используют средства микроядра для обмена сообщениями, но взаимодействуют непосредственно. Предоставляемый ядром сервис дает прикладным программам доступ к таким ресурсам системы, как, например, память или устройства ввода/вывода.
Ядро может обеспечивать сервис пяти типов:
1. Синхронизация ресурсов.
Метод синхронизации требует ограничить доступ к общим ресурсам (данным и внешним устройствам). Наиболее распространенный тип примитивной синхронизации - двоичный семафор, обеспечивающий избирательный доступ к общим ресурсам. Так, процесс, требующий защищенного семафором ресурса, вынужден ожидать до тех пор, пока семафор не станет доступным, что свидетельствует об освобождении ожидаемого ресурса, и, захватив ресурс, установить семафор. В свою очередь, другие процессы также будут ожидать доступа к ресурсу вплоть до того момента, когда семафор возвратит соответствующий ресурс системе распределения ресурсов. Системы, обладающие большей ошибкоустойчивостью, могут иметь счетный семафор. Этот вид семафора разрешает одновременный доступ к ресурсу лишь определенному количеству процессов.
2. Межзадачный обмен.
Часто необходимо обеспечить передачу данных между программами внутри одной и той же системы. Кроме того, во многих приложениях возникает необходимость взаимодействия с другими системами через сеть. Внутренняя связь может быть осуществлена через систему передачи сообщений. Внешнюю связь можно организовать либо через датаграмму (наилучший способ доставки), либо по линиям связи (гарантированная доставка). Выбор того или иного способа зависит от протокола связи.
3. Разделение данных.
В прикладных программах, работающих в реальном времени, наиболее длительным является сбор данных. Данные часто необходимы для работы других программ или нужны системе для выполнения каких-либо своих функций. Во многих системах предусмотрен доступ к общим разделам памяти. Широко распространена организация очереди данных. Применяется много типов очередей, каждый из которых обладает собственными достоинствами.
4. Обработка запросов внешних устройств.
Каждая прикладная программа в реальном времени связана с внешним
устройством определенного типа. Ядро должно обеспечивать службы
ввода/вывода, позволяющие прикладным программам осуществлять чтение с этих
устройств и запись на них. Для приложений реального времени обычным
является наличие специфического для данного приложения внешнего устройства.
Ядро должно предоставлять сервис, облегчающий работу с драйверами
устройств. Например, давать возможность записи на языках высокого уровня -
таких, как Си или Паскаль.
5. Обработка особых ситуаций.
Особая ситуация представляет собой событие, возникающее во время
выполнения программы. Она может быть синхронной, если ее возникновение
предсказуемо, как, например, деление на нуль. А может быть и асинхронной, если возникает непредсказуемо, как, например, падение напряжения.
Предоставление возможности обрабатывать события такого типа позволяет
прикладным программам реального времени быстро и предсказуемо отвечать на
внутренние и внешние события. Существуют два метода обработки особых
ситуаций - использование значений состояния для обнаружения ошибочных
условий и использование обработчика особых ситуаций для прерывания
ошибочных условий и их корректировки.
3. Пикоядро.
Базовые требования современных систем реального времени стали столь
обширны, что назрела необходимость в структуризации уже самого микроядра.
Была выдвинута идея так называемого «пикоядра». Пикоядро – в данном случае
это ядро, имеющее следующие свойства:
. Не имеет каких-либо состояний (начальных, конечных или промежуточных), ядро без состояния. Не требует инициализации и деинициализации.
. Реализует и содержит в себе очень малое количество функций и данных – только функции для работы с объектами.
. Предоставляет объектно-ориентированный интерфейс системе в виде небольшого количества системных вызовов для работы с объектами.
. Является полностью пассивной частью кода операционной системы – код ядра выполняется только во время системных вызовов.
. В большинстве случаев является обычной статической библиотекой, которая компонуется с главной системной частью ОС – менеджером процессов.
3. Методы управления задачами в ОС РВ.
1. Классификация подходов.
Существует большое количество различных методов управления задачами.
Каждый из них предназначен для использования в определённом классе систем, каждая из которых основана на некотором множестве ограничений.
1. Статическое планирование.
Большинство всех существующих методов относятся к статическому планированию. В этом случае считается, что всё множество задач системы и все их характеристики известны заранее. В этом случае расписание работы задач строится до начала работы системы и остаётся постоянным во время её функционирования. В этом расписании определены времена старта для всех задач системы. В течение работы системы планировщик выбирает следующую задачу для запуска в соответствии с этим расписанием. Расписание циклически повторяется.
Рекомендуем скачать другие рефераты по теме: реферат ссср, скачать шпоры.
Категории:
Предыдущая страница реферата | 10 11 12 13 14 15 16 17 18 19 20 | Следующая страница реферата