Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СРВ_05_21_00_Операционные системы реального времени.pptx
Скачиваний:
10
Добавлен:
20.06.2023
Размер:
118.34 Кб
Скачать

Особенности ОСРВ. Архитектура

 

 

 

 

 

«Микроядерная» архителтура (СРВ)

 

 

 

 

 

Принцип «клиент-сервер» - IPC –

 

Приложение

 

 

механизм сообщений

 

 

. . .

 

 

 

Задача_1

Задача_N

 

масштабируемость (scalability);

 

 

 

 

 

высокая надежность;

 

 

 

 

 

 

 

 

 

 

Сервисы (API)

Приложение

 

Ядро

 

Задача_1 . . .

Задача_N

Функции ОС

 

 

Аппаратная платформа

Сервисы (API)

 

 

 

 

 

 

 

С. памяти

 

С. процессов

 

 

 

«Монолитная» архитектура

 

 

 

 

 

 

 

 

 

 

 

 

 

Файловый С.

 

 

 

С. сети

 

жесткая связь между функциями

 

 

 

 

 

 

 

 

 

Микроядро

 

 

 

ОС,

 

 

 

 

 

 

 

 

 

 

сложность расширения

 

 

 

 

 

 

 

 

 

Аппаратная платформа

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(С – сервер)

5. Операционные системы реального времени

1

2019 v.01

 

Ядро «монолитной» архитектуры

Пространство

 

 

 

 

 

 

 

 

 

 

 

пользователя

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

API

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление

 

 

Управление

 

 

Управление

 

 

Стэк

 

 

 

процессами

 

 

памятью

 

 

файлами

 

 

протоколов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Архитектурно-зависимая

 

 

Драйверы устройств

 

 

 

 

 

часть

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пространство

 

 

 

 

 

 

 

 

 

 

 

ядра

 

 

 

Аппаратная платформа

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление процессами – создание/удаление, диспетчеризация, защита памяти, взаимодействие

Управление памятью – страничная организация, свопинг Управление файлами – закрыть/открыть, чтение/запись, кэширование

Стэк протоколов – сокеты, TCP, IP

5. Операционные системы реального времени

2

2019 v.01

 

«Микроядерная» архитектура

Сервер

Приложения

памяти

 

 

Файловый

Ядро

Стэк

сервер

протоколов

 

Драйверы

 

 

устройств

 

Аппаратная платформа

Ядро – управление потоками, межмодульное взаимодействие (механизм сообщений). Не планируется диспетчером (!), работает по событиям.

5. Операционные системы реального времени

3

2019 v.01

 

ОС РВ, необходимые тебования

(Мартин Тиммерман)

1.Многозадачность с поддержкой вытесняющей диспетчеризации

2.Поддержка приоритетного управления

3.Наличие предсказуемых механизмов синхронизации,

4.Поддержка протоколов борьбы с инверсией приоритетов.

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

И.Б. Бурдонов Операционные системы реального времени http://www.ispras.ru/preprints/docs/prep_14_2006.pdf

5. Операционные системы реального времени

4

2019 v.01

 

Стандарт POSIX

Portable Operating System Interface

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

«Базируется» на UNIX, IEEE P1003, первоначальный вариант - 1990 г, включают набор более чем из 30 стандартов.

Для ОСРВ наиболее важны три из 1003.1a, 1003.1b, 1003.1c

5. Операционные системы реального времени

5

2018 v.01

 

POSIX – расширения для систем реального времени

Multithreading Model; (POSIX.1 process model – ориентирована на повышение эффективности)

Real-Time Extensions диспетчеризация, синхронизация, разделяемая память, таймеры, асинхронный ввод/вывод

Additional Real-Time Extension timeout, спорадический сервер, управление прерываниями, управление устройствами

Real-Time Application Environment

5. Операционные системы реального времени

6

2018 v.01

 

Расширения реального времени – нитки

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

Функциональность:

Создание/инициирование/уничтожение

Управление ресурсами нитки

Планирование выполнения

Изменение/просмотр параметров (приоритет, дисциплина планирования, адрес и размер стека, и т.д)

5. Операционные системы реального времени

7

2018 v.01

 

Расширения реального времени - таймеры

Реальное время доступно для нитки

Функциональность:

получение/изменение времени часов

поддержка до 32-х таймеров - создание, запуск, уничтожение;

разрешение таймера – наносекунды

5. Операционные системы реального времени

8

2018 v.01

 

Расширения реального времени - планирование

Планирование с фиксированными приоритетами; количество уровней не менее 32

Для ниток имеется возможность:

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

выбирать FIFO или round-robin дисциплины обслуживания очереди готовых

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

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

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

5. Операционные системы реального времени

9

2018 v.01

 

Расширения реального времени – синхронизация и взаимодействие

Семафоры (semaphores)

простота реализации, низкие накладные расходы

допускает инверсию приоритетов

Mutex

поддерживает как протокол наследования приоритетов, так и протокол предельных приоритетов (priority ceiling протокол)

Условные переменные (condition variables)

Механизм сообщений

приоритетные сообщения

send/receive: неблокирующий

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

5. Операционные системы реального времени

10

2018 v.01