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

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

 

 

 

 

 

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

 

 

 

 

 

Принцип «клиент-сервер» - 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