лекция 8 (Лекции по POSIX и QNX)
Описание файла
Файл "лекция 8" внутри архива находится в папке "Лекции по POSIX и QNX". Документ из архива "Лекции по POSIX и QNX", который расположен в категории "". Всё это находится в предмете "системы реального времени" из 10 семестр (2 семестр магистратуры), которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "системы реального времени" в общих файлах.
Онлайн просмотр документа "лекция 8"
Текст из документа "лекция 8"
Федеральное агентство по образованию Государственное образовательное учреждение
высшего профессионального образования «МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ПРИБОРОСТРЕНИЯ И ИНФОРМАТИКИ» Кафедра ИТ-7 «Автоматизированные системы обработки информации и
управления»
УТВЕРЖДАЮ
Проректор МГУПИ по учебной работе
________О.М. Щебров
«_____»_____________ 200_г.
Для студентов 5 курса факультета ИТ специальности 220203
старший преподаватель
Иванова И. А.
ЛЕКЦИЯ № 8
по дисциплине 1725 «Системы реального времени»
ТЕМА
Обсуждена на заседании кафедры
(предметно-методической секции)
«___»__________________ 200_г.
Протокол № ____
МГУПИ —200_г.
Тема лекции: QNХ.
Учебные и воспитательные цели:
1. Посещаемость
Время: 4 часа (180 мин.)
Литература (основная и дополнительная):
1. Васьков С. Т. и др. «Открытые системы реального времени», ИВТ, М., 1995 №1-2.
-
Калядин Александр, «Системы реального времени. Архитектура современных промышленных систем». Открытые Системы, М. 1998, №3.
-
Коваленко И.Н. «Neutrino™; В поисках Святого Грааля», Открытые Системы, М. 1997, №5
-
Хухлаев Е., «Операционные системы реального времени и Windows NT»,
Открытые системы, М., 1997, №5. -
Коваленко И.Н. «QNX: Золушка в семье UNIX», Открытые системы, М. 1995,№2.
-
Практика работы с QNХ, Издательский дом «КомБук», М. 2004.
-
С. Зыль, «Операционная система реального времени QNX от теории к практике», «БХВ-Петербург», С-П. 2004
Учебно-материальное обеспечение:
-
Наглядные пособия: плакаты
-
Технические средства обучения: компьютер
ПЛАН ЛЕКЦИИ:
Введение - до 10 мин.
Основная часть (учебные вопросы) - до 170 мин.
1-й учебный вопрос. Обзор QNX.- 170 мин.
Заключение- до 10 мин.
ТЕКСТ ЛЕКЦИИ
1-й учебный вопрос Обзор QNX
QNX
Микро ядерная ОС основана на идеи работы основной части своих компонентов как небольшие задачи называется серверами. Используют микро ядра QNX, позволяющие отключить любую ненужную функцию не изменяя ядра. Создана 1 980г. - студентами. В 82г. был первый выпуск.
Первое использование в министерстве образования в Канаде. В середине 80-х выходит QNX2 распространяется для управления промышленными машинами. В середине 90-х переписывают ядро под стандарт РОSIХ и выходит QNX4, в нее входит встраиваемая графическая подсистемаPhoton micro GUI. В конце 90г. создана ОС совместимая с LINEX и в 2001г. в продолжение QNХ Neutrino(QNX6). Эта версия Momentics - это среда разработок ПО основ на Eclips.
QNX6 все драйвера были открыты.
Примеры применения QNX
Карточки Визо в Америке, управление дорожным движением в Канаде, управление ядерным реактором в Канаде, для научного исследовательского моделирования процессов, нефтяные вышки в Москве, развод моста в Санкт - Петербурге.
Архитектура QNX
Центральным понятием является микро ядро. Ядро является коммутирующим элементом, к которому с помощью дополнительных программных модулей добавляется та или иная функциональность, кроме микро ядра в QNX есть администрация процессов.
Программа, реализующая сервисные функции, называется администрировании ресурсов.
Функциональность ОС может расширятся так же с помощью динамических присоединенных библиотек.
QNX состоит из микро ядра, нитрина, админ. процессов, админ. ресурсов и прикладные программы.
Процесс - это выполняемая программа, которая включает в себя код и данные программы и различную дополнительную информацию.
Порот управления - это фрагмент процесса содержащий непрерывную последовательность команд, которые могут выполняться параллельно с другими потоками. Процесс является контейнером потоков, содержащий минимум 1 поток. Потоки используют:
1) для распараллеливания задачи на много процессоры ЭВМ.
2) для более эффектного использования процессора.
3) для облегчения совместного использования данных.
МЕХАНИЗМЫ МИКРО ЯДРА
Ядро выполняет следующие функции:
-
создание и уничтожение потоков
-
диспечирирование потоков
-
синхронизация потоков
-
механизмом IРС
-
поддержка механизмов обработки прерываний
-
поддержка часов, таймеров и таймаутов.
На этапе выполнения поток может находиться в одном из 3-х состояний:
1. исполнение
2.ожидание процесса или готовность
3.блокировка выжидания освободившихся ресурсов
Версия приоритетов - это ситуация, при которой в результате взаимного синхронного управления получиться не тот процесс который должен был получиться из соображения приоритетности, а с более низким приоритетом.
Предполагается что 3 потока управления т1, т2, т3
их приоритеты т1<т2<тЗ
допустим, что потоки старт во времени последовательности т1, т2, т3 . Если т1 захватывает некоторый монопольный ресурс, который также требуется так же для т3., и не успевает освободить его до активизации т2 происходит:
-
т1 не выполняется т.к. он вытесняет т2.
-
Т3 не выполняется т.к. ожидает ресурс захваченный т.1.
-
Т2 выполняется до бесконечности.
ДИСПЕЧИРЕЗАЦИЯ ПОТОКОВ
Всего в QNX 256 уровней самый низкий приоритет 0, высокий 255.
0 приоритет имеет специальный поток админ. процессов IDLE данный поток всегда находится в состоянии готовности к исполнению.
Диспечирезация выполняется микро ядром в 3 - х случаях.
-
исполняющийся на процессоре поток перешёл в блокировочное состояние.
-
Поток с более высоким чем у исполняющего потока приоритетом перешёл в состояние готовности.(вытеснение потока)
-
Исполняемый поток сам передал исполнение другому потоку.
ФАЙЛЫ И КАТАЛОГИ.
Файл - это набор байтов имеющих общие атрибуты:
1 . имя файла
-
идентификатор владельца
-
идентификатор группы
-
атрибуты доступа
-
метки времени
-
тип файла
-
счетчик из ссылок
-
другие атрибуты
ИМЯ ФАЙЛА
QNX обеспечивает поддержку следующих типов файлов:
1) обычные файлы,
2) каталоги,
3) жесткие ссылки,
4) символические ссылки,
5) именованные каналы,
6) блок ориентированные файлы,
7) байт ориентированные специальные файлы,
8) именованные специальные файлы.
Обычные файлы - это последовательные байты не имеющие предопределенных структур с т.з. QNХ.
В отличии от Windows, QNX узн. Исполнения функций не по расширению, а по специальному атрибуту.
Каталоги - это файлы имеющие определённую структуру.
Каталоги представляют набор записей определенного формата называется элементами каталогов.
Каждый элемент каталогов связан с именем некоторого файла со служебной информации о нём включая ссылку.
-
атрибут доступа
-
счётчик ссылок на физические данные
-
тип файла
-
статус, закрыт/открыт
жесткие ссылки(связи) - это дополнительные элементы каталога, т.е. для одних и тех же физических данных файла можно создать ещё один элемент каталога. При создании жёсткой ссылки информация о физическом размещении данных выносится в файл ./inodes, счётчик ссылок увеличивается на единицу.
Символические ссылки - это текстовый файл, содержащий имя другие функции или каталога, к которому перенаправляются все запросы ввода/вывода. Символические ссылки могут указывать на функции или каталог, находящийся на другом физическом носители, но создает опасность бесконечных циклов. Число переходов по ссылкам, ограниченных значением переменной symloop_max в определении заголовка файла limirs.h
Именованные программные каналы fifo предназначены для организации взаимодействий между двумя или более процессами. Один процесс пишет в программе канал, другой читает
Заключение - до 10 мин.
В лекции рассматривались вопросы, являющиеся основополагающими в предмете
«Системы реального времени».
Лекция разработана « ___»_________ 200 _ г.
И.А. Иванова
(подпись)