На главную | Где купить | Авторам и заказчикам | Вакансии | Реклама | Издательство | Каталог | Статьи наших авторов | Контакты | Прайс листы

Операционная система реального времени QNX Neutrino 6.5.0. Системная архитектура

Автор -
Название Операционная система реального времени QNX Neutrino 6.5.0. Системная архитектура
Серия Внесерийные книги
ISBN 978-5-9775-3350-8
Формат 60*90 1/16
Объем 400
Тематика
Оптовая цена 339 руб.
    Вернуться к описанию книги

Полное содержание

Содержание Предисловие 1
Примечание для пользователей ОС Windows 2

Глава 1. Философия QNX Neutrino

3
Цели разработки 3
Встраиваемая операционная система стандарта POSIX 4
Масштабирование операционной системы внутри семейства продуктов 4
POSIX для встраиваемых систем 5
Преимущества QNX Neutrino для встраиваемых систем 8
Микроядерная архитектура 9
Операционная система как организованный набор процессов 12
Истинное ядро 13
Системные процессы 14
Межзадачное взаимодействие 15
QNX Neutrino как операционная система на основе обмена сообщениями 16
Распределенные сетевые конфигурации 17
Однокомпьютерная модель 17
Гибкие сетевые возможности 18

Глава 2. Микроядро QNX Neutrino

21
Введение 21
Реализация QNX Neutrino 23
Потоки и функции реального времени в POSIX 23
Системные службы 23
Потоки и процессы 25
Атрибуты потока 29
Планирование потоков 34
Выполнение операций планирования 34
Планирование и приоритеты 36
Алгоритмы планирования 38
Механизм межзадачного взаимодействия (IPC) 46
Алгоритмическая сложность потоков 47
Службы синхронизации 49
Блокировки взаимного исключения (мьютексы) 50
Условные переменные 52
Барьеры 53
Ждущие блокировки 57
Блокировки по чтению/записи 58
Семафоры 58
Синхронизация с помощью алгоритма планирования 60
Синхронизация с помощью механизма обмена сообщениями 61
Синхронизация с помощью атомарных операций 61
Реализация служб синхронизации 62
Службы управления часами и таймерами 63
Корректировка времени 65
Таймеры 65
Обработка прерываний 68
Задержка обработки прерывания 69
Задержка планирования 70
Вложенные прерывания 71
Вызовы, связанные с прерываниями 72

Глава 3. Межзадачное взаимодействие в QNX Neutrino

79
Синхронный обмен сообщениями 80
Функции MsgReply() и MsgError() 84
Копирование сообщений 84
Простые сообщения 87
Каналы и соединения 88
Импульсы 91
Наследование приоритетов 91
Программный интерфейс механизма обмена сообщениями 92
Отказоустойчивая архитектура на основе механизма Send/Receive/Reply 93
События 96
Уведомления ввода/вывода 98
Сигналы 99
Специальные сигналы 102
Краткое описание сигналов 104
Очереди сообщений POSIX 106
Очереди сообщений POSIX 107
Интерфейс, аналогичный файлам 108
Функции управления очередями сообщений 109
Разделяемая память 110
Разделяемая память с механизмом обмена сообщениями 110
Создание объектов разделяемой памяти 112
Функция mmap() 114
Инициализация выделенной памяти 119
Типизированная память 120
Поведение, определяемое реализацией 120
Практические примеры 126
Неименованные и именованные каналы 128
Неименованные каналы 128
Именованные каналы 129

Глава 4. Диагностическая версия микроядра

131
Введение 131
Общие сведения о диагностическом механизме 132
Управление трассировкой событий 133
Режимы генерации событий 133
Циклический буфер 134
Интерпретация данных 135
Системный анализ с помощью IDE 136
Дополнительные средства трассировки 137

Глава 5. Поддержка многоядерных процессоров

139
Введение 139
Асимметричная многопроцессорность (AMP) 140
Симметричная многопроцессорность (SMP) 141
Микроядро Neutrino в приближении 143
Загрузка многопроцессорной системы на основе архитектуры x86 144
Загрузка многопроцессорной системы на основе архитектуры PowerPC или MIPS 145
Как работает микроядро с симметричной многопроцессорностью 146
Критические секции программного кода 148
Многопроцессорность с привязкой к заданным процессам (BMP) 150
Приемлемая стратегия миграции 152
Выбор между AMP, SMP и BMP 153

Глава 6. Администратор процессов

155
Введение 155
Управление процессами 156
Примитивы создания процессов 156
Загрузка процессов 162
Управление памятью 163
Блоки управления памятью 164
Защита памяти в режиме исполнения 166
Контроль качества 168
Модель полной защиты памяти 169
Изменяемый размер страницы 170
Блокирование памяти 170
Дефрагментация физической памяти 172
Управление пространством имен 177
Области ответственности 177
Разрешение имен путей 178
Символьные префиксы 184
Пространство имен файловых дескрипторов 187

Глава 7. Динамическая компоновка

191
Разделяемые объекты 191
Статическая компоновка 191
Динамическая компоновка 192
Добавление кода в процессе работы программы 193
Как используются разделяемые объекты 193
Формат ELF 194
ELF без COFF 195
Схема распределения памяти для процесса 195
Динамический компоновщик 197
Загрузка разделяемой библиотеки во время работы программы 199
Разрешение имен идентификаторов 199

Глава 8. Администраторы ресурсов

201
Введение 201
Что такое администратор ресурсов? 201
Зачем писать администратор ресурсов? 203
Типы администраторов ресурсов 205
Обмен информацией посредством механизма межзадачного взаимодействия QNX Neutrino 206
Архитектура администратора ресурсов 208
Типы сообщений 209
Разделяемая библиотека администратора ресурсов 210
Резюме 216

Глава 9. Файловые системы

217
Введение 217
Файловые системы и разрешение имен путей 218
Классы файловых систем 219
Файловые системы как разделяемые библиотеки 219
io-blk 221
Ограничения файловых систем 224
Файловая система образа 226
"Файловая система" в оперативной памяти 226
Файловая система ETFS 227
Структура транзакции 229
Типы устройств хранения данных 230
Обеспечение отказоустойчивости 230
Файловая система QNX 4 233
Файловая система Power-Safe 234
Проблемы с существующими дисковыми файловыми системами 234
Метод COW 236
Функциональные характеристики 239
Файловая система DOS 241
Поддержка версий DOS 242
Текстовые файлы DOS 242
Отображение имен файлов в QNX и DOS 242
Обработка файловых имен 242
Международные кодировки для файловых имен 243
Метки томов в DOS 244
Отображение прав доступа между DOS и QNX 244
Права на файлы 244
Файловая система для устройств CD-ROM 245
Файловая система FFS3 246
Разработка драйверов 246
Поддержка множества флеш-устройств 246
Возможности 248
Файловая система NFS 252
Файловая система CIFS 253
Файловая система Ext2 для ОС Linux 253
Файловая система UDF 254
Файловые системы HFS и HFS Plus 254
Файловая система NTFS 255
Виртуальные файловые системы 255

Глава 10. Устойчивая служба публикации/подписки PPS

257
Устойчивость 257
Поведение при запуске 258
Поведение при завершении 258
Объекты PPS 258
Файлы объектов 259
Извещение об изменениях 259
Опции и квалификаторы 259
Публикация 260
Несколько издателей 260
Подписка 261
Режимы подписки 261
Подписка на несколько объектов 262
Группы извещений 262

Глава 11. Символьный ввод/вывод

263
Введение 263
Взаимодействие между драйверами и модулем io-char 265
Управление устройствами 267
Режимы ввода 268
Производительность устройств 272
Консольные устройства 273
Эмуляция терминала 273
Устройства последовательного порта 274
Устройства параллельного порта 274
Псевдотерминальные устройства (pty) 275

Глава 12. Сетевая архитектура

277
Введение 277
Сетевая подсистема (io-pkt*) 277
Потоковая модель 280
Модуль сетевого протокола 282
Драйверный модуль 283
Загрузка и выгрузка драйвера 283

Глава 13. Сеть Qnet

285
Распределенная среда QNX Neutrino 285
Разрешение имен и поиск 287
Файловый дескриптор (идентификатор соединения) 289
Сущность простой операции open() 289
Служба глобальных имен 291
Именование сетевых ресурсов 291
Качество обслуживания и резервированные соединения 293
Политики качества обслуживания 293
Задание политик качества обслуживания 297
Символьные ссылки 297
Примеры 298
Локальные сети 298
Удаленные сети 299
Специализированные драйверы устройств 300

Глава 14. Поддержка TCP/IP

303
Введение 303
Конфигурации стека 304
Структура администратора протокола TCP/IP 305
Программный интерфейс Socket 306
Функции работы с базами данных 308
Множественные стеки протоколов 308
IP-фильтрация и преобразование сетевых адресов 309
Протокол сетевого времени 309
Динамическое конфигурирование узлов 310
Модуль AutoIP 310
Протокол PPPoE 311
etc/autoconnect 311
Встраиваемый веб-сервер 312
Метод CGI 313
Метод SSI 313

Глава 15. Высокая готовность

315
Что такое "высокая готовность"? 315
Операционная система с высокой готовностью 315
Поддержка специализированного оборудования 317
Клиентская библиотека 318
Пример сценария восстановления 319
Администратор высокой готовности 322
Администратор высокой готовности и его дублер 323
Структура администратора высокой готовности 323
Публикация автономно выявленных условий 329
Подписка на автономно опубликованные условия 330
Администратор высокой готовности как "файловая система" 331
Многостадийное восстановление 331
Программный интерфейс администратора высокой готовности 332

Глава 16. Адаптивное сегментирование

337
Что такое сегмент? 337
Если адаптивные сегменты не являются виртуальными компьютерами, то что они собой представляют? 338
Почему адаптивное? 340
Польза адаптивного сегментирования 341
Конструирование производительности продукта 341
Контроль сложности проекта 342
Обеспечение безопасности 344
Отладка 346
Адаптивный диспетчер 346

Глава 17. Photon microGUI

347
Графическое микроядро 347
Пространство событий 349
Области 350
События 352
Графические драйверы 354
Применение множества графических драйверов 355
Цветовая модель 356
Поддержка шрифтов 357
Штриховые шрифты 357
Многоязыковая поддержка стандарта Unicode 357
Кодировка UTF-8 358
Поддержка анимации 359
Наложение видеоизображения 359
Слои 359
Поддержка печати 360
Оконный администратор Photon 360
Библиотека виджетов 361
Базовые виджеты 361
Контейнеры 366
Дополнительные виджеты 368
Функции настройки 375
Комплекты разработки драйверов 378
Резюме 378
Предметный указатель 379


На главную | Где купить | Авторам | Вакансии | Реклама | Издательство | Каталог | Статьи наших авторов | Контакты
© 2001–2017 Издательство «БХВ-Петербург».
Все права защищены. Частичное или полное копирование текстов, слоганов и фотоизображений без письменного согласия Правообладателя запрещено.