- •Тула 2010
- •1.1 Принципы построения и основные требования. Особенности.
- •1.2 Ос рв qnx. Поддержка срв ос Linux.
- •1. 3 Функциональные требования к осрв
- •2. "Жесткие" и "мягкие" системы реального времени
- •3. Нити и приоритеты
- •4. Предсказуемость системных вызовов Win32 api
- •5. Управление прерываниями в nt
- •6. Управление памятью в nt
- •7. Может ли Windows nt использоваться в качестве ос рв?
- •Лекция №2.
- •Коммерческие решения, расширяющие nt возможностями обработки в реальном времени
- •Использование nt
- •3. Реализация Win32 api над другой ос рв
- •4. Совместная работа на одном процессоре nt и ос рв
- •5. Использование многопроцессорной архитектуры
- •6. Необходимые требования к ос для обеспечения предсказуемости
- •Лекция №3.
- •Лекция №4.
- •1. Разработка приложений жесткого реального времени
- •2. Модификация ядра
- •3. Модификация уровня аппаратных абстракций Windows nt (hal)
- •4. Применение ос рв
- •Лекция №5. Операционная система qnx. Системная архитектура.
- •Лекция № 6.
- •Лекция №7. Связь между процессами по сети посредством виртуальных каналов.
- •Лекция №8. Построение очереди процессов
- •Лекция №9. О работе в реальном времени
- •Лекция №10. Сопоставление и передача путей между процессами.
- •2. Префиксы управления вводом – выводом
- •5. Передача путей между процессами
- •2. Префиксы управления вводом – выводом
- •5. Передача путей между процессами
- •2. Относительные пути
- •3. Текущий рабочий каталог
- •Примечание относительно cd
- •4. Описатели файлов пространства
- •Лекция №12 Аппаратное и программное обеспечение промышленных систем реального времени (псрв)
- •Введение
- •1. Организация промышленных систем
- •2. Аппаратная архитектура
- •3. Стандарты шин
- •4. Технологии vme и pci
- •5. Мезонинные технологии
- •6. Полевые системы
- •7. Программное обеспечение промышленных систем
- •8. Управление производством
- •Лекция №13 Использование средства nt в качестве Web-сервера для iis (Internet Information Server)
- •Введение
- •Общие черты intranet-систем
- •3. Система управления доступом
- •4. Прикладное программирование в intranet
- •Лекция 14 Операционная система ос рв см эвм (rsx-11)
- •Введение
- •Основные компоненты системы ос рв
- •2. Диспетчер памяти
- •3. Многопользовательская защита
- •4. Выполнение задач под управлением ос рв
- •5. Внешние устройства и файловая система на дисках
- •Лекция 15 Управление прерываниями.
- •Вектора прерываний
- •Программирование контроллера прерываний 8259.
- •Запрет/разрешение отдельных аппаратных прерываний
- •Лекция 16 Управление Тема: прерываниями (продолжение).
- •Написание собственного прерывания
- •Дополнение к существующему прерыванию
- •Лекция 17 Синхронные методы проектирования срв
- •Система упорядоченного опроса
- •Основной цикл с прерываниями
- •Лекция 18 Синхронные методы проектирования срв (продолжение)
- •1 . Циклические планировщики
- •2. Выбор метода построения системы
- •3. Измерение быстродействия компьютера
- •4. Мультизадачный режим в операционной системе ms-dos
- •5. Условия существования мультизадачного режима в персональном компьютере ibm pc/at
- •X. Библиографический список рекомендуемой литературы
- •13.1 Ос рв usix: основные принципы построения и структура.
- •13.2 Поддержка рв в usix
- •13.3 Управление виртуальной памятью в usix
- •14.1 Процессы, связанные с выполнением программ
- •14.2 Функции ос рв usix, не связанные с управлением процессами
- •15.1 Программирование коммуникационных устройств.
- •15.2 Драйверы коммуникационных устройств
- •16.1 Файловая система
- •16.2 Средства защиты от несанкционированного доступа
- •16.3 Поддержка протоколов и окружений usix
Лекция 18 Синхронные методы проектирования срв (продолжение)
План лекции:
Циклические планировщики
Выбор метода построения системы
Измерение быстродействия компьютера
Мультизадачный режим в операционной системе MS-DOS
Условия существования мультизадачного режима в персональном компьютере IBM PC/AT
1 . Циклические планировщики
Для того, чтобы понять работу циклических планировщиков рассмотрим систему управления процессом. Требуется, чтобы контроль и управление происходили бы каждые 100 мсек. Другими характеристиками, требующими контроля, являются давление, влажность и химический состав. Эти характеристики требуют менее частого контроля, чем температура процесса.
Предположим, что процедура temp_cont rol требует 10 мсек для контроля и управления температурой. Процедура temp_control должна выполняться каждые 100 мсек, потому что температуру следует контролировать каждые 100 мсек.
Аналогичным образом процедуры В, С, и D контролируют и управляют тремя другими характеристиками, как это показано в таблице 8. Далее, предположим, что процедуры С и D выполняются раз в каждые 300 мсек, а процедура В выполняется два раза каждые 300 мсек.
Такая система реального времени может быть построена при использовании конструкции циклического планировщика, представленной схемой 12. Здесь имеется три цикла: 0, 1 и 2. Последовательность выполнения циклов такова: 0, 1, 2 и 0, 1, 2 повторно.
Процедуры, требуемые для данного примера
Имя процедуры |
Контролируемая характеристика |
Время выполнения |
Требуемые повторы время комментарий |
temp_contro в с
D |
Температура Давление
Влажность
Химический состав |
20 мсек 40 мсек 60 мсек 38 мсек
|
100 мсек Изменения не разрешены
150 мсек Изменения разрешены 300 мсек Изменения разрешены 300 мсек Изменения разрешены |
Отметим, что процедура temp__cont_rol выполняется один раз в каждом цикле. Каждый цикл требует 100 мсек для своего выполнения, куда включается время, требуемое для выполнения главного цикла, время, требуемое для выполнения процедуры temp_control и время "передышки", появляющейся в конце каждого цикла. "Передышки" предназначены для синхронизации выполнения циклов с требованиями, предъявляемыми к временам, затрачиваемым на наиболее часто выполняемые процедуры (в нашем примере это относится к процедуре temp_ cont rol ).
На рис. 15 показана концепция построения циклического планировщика без прерываний. Во многих прикладных программах может оказаться необходимым использование прерываний, которые бы сигнализировали о наличии внешнего события, требующего к себе немедленного внимания. Циклический планировщик может быть также построен с применением требований, что показано на рисунке 13.
На рисунке 16 (А) показано, как мы гарантируем то, что главный цикл требует 100 мсек для выполнения каждого цикла, если не возникает прерывания. Предположим, прерывание возникает во время выполнения процедуры temp_control. Процедура temp_control завершается и после этого обрабатывается прерывание. После обработки прерывания выполняется процедура В. Поскольку невозможно предсказать момент возникновения прерывания, общее время выполнения каждого цикла также не может быть предсказано. Таким образом, время выполнения цикла циклическим планировщиком с прерываниями является неопределяемым.
Рис 15. Структура циклического планировщика
Преимуществами конструкции циклического планировщика являются:
- Простая форма мультизадачности.
- Определение рабочего времени за исключением случаев с прерываниями.
Недостатками этой конструкции являются:
- Неэффективность - все циклы должны выполняться до
полного своего завершения.
- Время выполнения цикла увеличивается с увеличением числа циклов.
- Трудность проведения модификаций и сохранения тех же временных параметров.