Сайты ТУСУРа

Системы реального времени

Учебное пособие

Рассмотрены вопросы организации и построения систем реального времени. Сделан обзор современных автоматизированных информационных систем управления технологическими процессами и операционных систем реального времени используемых в них. Основное внимание уделено вопросу построения операционной системы реального времени QNX (QNX Software Systems Limited). Предназначено для студентов направлений 09.03.04, Программная инженерия, 09.04.04, Программная инженерия, Методы и технологии индустриального проектирования программного обеспечения.

Кафедра автоматизации обработки информации

Библиографическая запись:

Гриценко, Ю. Б. Системы реального времени: Учебное пособие [Электронный ресурс] / Ю. Б. Гриценко. — Томск: ТУСУР, 2017. — 253 с. — Режим доступа: https://edu.tusur.ru/publications/6816
Автор:   Гриценко Ю. Б.
Год издания: 2017
Количество страниц: 253
Скачиваний: 797

Оглавление (содержание)

Предисловие 7

1. Введение в системы реального времени 9

1.1. Определения систем реального времени 9

1.2. Области применения и вычислительные платформы СРВ 12

1.3. Организация систем реального времени 19

1.3.1. Типичное строение систем реального времени 19

1.3.2. Задачи, решаемые в системах реального времени 20

1.3.3. Архитектура приложений систем реального времени с учетом предсказуемости 22

1.3.4. Проектирование систем жесткого реального времени 23

Вопросы для самопроверки 29

2. Автоматизированные системы управления технологическими процессами 30

2.1. Этапы развития АСУТП 30

2.2. Назначение компонентов систем контроля и управления 34

2.3. Функциональные возможности SCADA-систем 39

2.4. Контроллеры 41

2.5. Технологические языки программирования контроллеров по стандарту IEC 1131.3 51

Вопросы для самопроверки 54

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

3.1. Функциональные требования ОСРВ 55

3.1.1. Основные понятия, используемые при формировании функциональных требований к ОСРВ 55

3.1.2. Диспетчеризация потоков 58

3.1.3. Уровни приоритетов 63

3.1.4. Механизмы синхронизации 64

3.1.5. Защита от инверсии приоритетов 64

3.1.6. Временные характеристики ОС 66

3.1.7. Принципиальные отличия ОСРВ от ОС общего назначения. 67

3.2. Архитектуры построения ОСРВ 69

3.2.1. Монолитные ОС 69

3.2.2. Уровневые ОС 70

3.2.3. Клиент-серверные ОС (модульная архитектура, архитектура на основе микроядра) 71

3.2.4. Объектная архитектура на основе объектов-микроядр 73

3.2.5. Обобщенное построение ОСРВ 74

3.3. Разделение ОСРВ по способу разработки 75

Вопросы для самопроверки 77

4. Стандарты на ОСРВ 79

4.1. Важность стандартов на ОСРВ 79

4.2. Стандарт SCEPTRE 79

4.3. Стандарт POSIX 80

4.4. DO-178B 89

4.5. ARINC-653 90

4.6. OSEK 91

4.7. Стандарты безопасности 91

Вопросы для самопроверки 94

5. Обзор ОСРВ 96

5.1. Классификация ОСРВ в зависимости от происхождения 96

5.2. Системы на основе обычных ОС 96

5.2.1. Linux 96

5.2.2. Windows NT 99

5.3. Собственно типы ОСРВ 109

5.3.1. LynxOS 109

5.3.2. OS-9 122

5.3.3. VxWorks 126

5.3.4. SoftKernel 132

5.3.5. CHORUS 134

5.3.6. pSOS 139

5.3.7. ОС2000 141

5.3.8. QNX 144

5.4. Специализированные ОСРВ 147

5.5. Обобщенный обзор функциональности ОСРВ 147

Вопросы для самопроверки 152

6. Микроядро ОС QNX Neutrino 153

6.1. Введение 153

6.2. Потоки и процессы 156

6.2.1. Вызовы по управлению потоками 156

6.2.2. Состояния потока 159

6.2.3. Планирование потоков 161

6.2.4. Управление потоками 165

6.3. Механизмы синхронизации 169

6.3.1. Перечень механизмов синхронизации 169

6.3.2. Блокировки взаимного исключения (мьютексы) 169

6.3.3. Условные переменные 171

6.3.4. Барьеры 172

6.3.5. Ждущие блокировки 173

6.3.6. Блокировки по чтению/записи 173

6.3.7. Семафоры 174

6.3.8. Синхронизация с помощью алгоритма планирования 175

6.3.9. Синхронизация с помощью механизма обмена сообщениями 176

6.3.10. Синхронизация с помощью атомарных операций 176

6.4. Межзадачное взаимодействие 177

6.4.1. Формы межзадачного взаимодействия 177

6.4.2. Связь между процессами посредством сообщений 178

6.4.3. Примеры связи между процессами посредствам обмена сообщениями 189

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

6.5. Управление таймером 199

6.6. Сетевое взаимодействие 207

6.7. Первичная обработка прерываний 210

6.8. Диагностическая версия микроядра 213

Вопросы для самопроверки 216

7. Администратор процессов и управление ресурсами в ОС QNX 218

7.1. Управление процессами 218

7.2. Обработчики прерываний 225

7.3. Администраторы ресурсов 227

7.4. Файловые системы в QNX 227

7.5. Инсталляционные пакеты и их репозитарии 231

7.6. Символьные устройства ввода/вывода 233

7.7. Сетевая подсистема QNX 235

7.8. Технология Jump Gate 243

7.9. Графический интерфейс пользователя Photon microGUI 245

7.10. Печать в ОС QNX 248

Вопросы для самопроверки 250

Глоссарий 251

Список литературы 253