Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы СПЗ.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
113.15 Кб
Скачать

Ответы по дисциплине: «Системное программное обеспечение»

by NINTEO

Задачи не прелагаются!

  1. Ос реального времени.

ОС реального времени – это операционная система, реагирующая в предсказуемое время на непредсказуемое появление внешних событий.

В настоящее время их насчитывают десятки. Самые популярные:VxWorks,OS9,pSOSt,LynxOS,VPTx,WindowsCENET,QNX.

Все системы реального времени делятся на две группы:

  • Системы жесткого реального времени(OS9,QNX). Операционная система, которая может обеспечить требуемое время выполнения задачи реального времени даже в худших случаях.

  • Системы, не обеспечивающие жесткое реальное время. При высокой загруженности они не могут обеспечить режим в реальном времени. Системы мягкого реального времени характеризуются возможностью задержки реакции, что может привести к увеличению стоимости результатов и снижению производительности системы в целом.

Основное отличие систем жёсткого и мягкого реального времени можно охарактеризовать так: система жёсткого реального времени никогда не опоздает с реакцией на событие, система мягкого реального времени — не должна опаздывать с реакцией на событие

  1. Технические требования к ос реального времени

- Система должна обеспечивать гарантированный отклик в гарантированное время

- Система должна ожидать способность обработки нескольких событий (гарантия завершения события в отведенный ему интервал)

- Система должна поддерживать вытесняющую много поточность и мульти процессорную архитектуру.

- Поведение системы должно быть предсказуемо после выполнения системных вызовов

- Отсутствие инверсии приоритетов

  1. Инверсия приоритетов и реальное время

Инверсия приоритетов – это ситуация при которой в результате взаимной синхронизации управление получает не та ветвь исполнения, которая должна была бы получит из соображения приоритетности, а другая, с более низким приоритетом. Следовательно нарушается детерминированность и прогнозируемость систем.

Положим, в системе присутствуют 3 потока управления: Т1, Т2, Т3, причём их

приоритеты: T1 < T2 < T3. Положим, потоки активируются во временной последовательности так: T1

- T2 - T3. Если теперь T1 - захватывает некоторый монопольный ресурс, который

требуется так же и T3, и не успевает освободить его до активации Т2, то происходит:

- T1 не выполняется, потому, что он вытеснен T2 (в виду приоритетности);

- T3 не выполняется, потому, что ожидает ресурс, захваченный T1;

- T2 - выполняется ... вплоть до бесконечно долго!

Но T2, в описываемой ситуации – не является самым высокоприоритетным потоком,

подлежащим немедленному исполнению.если T3 - реакция на citical mission событие, то оно не только необработается в гарантированное время, но и вообще гарантировано не обработается.

  1. Ос qnx характеристика

QNX - это зарегистрированная торговая марка фирмы QNX (Quantum) Software Systems, Canada. Фирма основана в 1980 году. В то же время QNX - это операционная система (ОС) стандарта POSIX, которая позволяет обеспечить на персональном компьютере распределенную обработку данных в реальном масштабе времени.

Как микроядерная операционная система, QNX основана на идее работы основной части своих компонентов как небольших задач, называемых сервисами. Это отличает её от традиционных монолитных ядер, в которых ядро операционной системы — одна большая программа, состоящая из большого количества «частей», каждая со своими особенностями.

Использование микроядра в QNX позволяет пользователям (разработчикам) отключить любую ненужную им функциональность, не изменяя ядро. Вместо этого можно просто не запускать определённый процесс. В QNX ядро имеет очень маленький размер (7 Кбайт) и выполняет две основные функции:

  1. Передача сообщений . Доставка сообщений от одного процесса к другому во всей операционной системе ;

  2. Диспетчеризация процессов. Диспетчер является частью ядра и привлекается всегда, когда процессы изменяют свое состояние в результате событий, связанных с сообщениями или прерываниями.

  1. 2. Диспетчеризация процессов. Диспетчер является частью ядра и привлекается всегда, когда процессы изменяют свое состояние в результате событий, связанных с сообщениями или прерываниями. Процессы и потоки в ОС QNX

Sched_get_priority_min()

Sched_get_priority_max()

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

Если поток с более высоким приоритетом становится готовым ,к выполнению ядро немедленно переключает контекст на этот поток – вытеснение.

После его завершения ядро переключается на более низкоприоритетный поток – возобновление.