- •1 Билет
- •1) Стандарт орс (назначение и общее представление, орс сервер, орс группа, орс item).
- •2) Процесс разработки по систем управления(обычный подход – «waterfall», итеративный подход).
- •2 Билет.
- •1) По систем управления. Основные понятия(представление о классах, сом интерфейсах, ActiveX).
- •Билет №3.
- •2) Оригинальные инструментальные средства разработки программного обеспечения систем управления (nCsApp Wizard, State Machine Builder).
- •Билет №4.
- •1) Основные классы mfc (cObject, коллекции, cString, cWnd, механизм документа отображение).
- •2) Идеи компонентного подхода (базовый интерфейс iUnknown, включение, агрегация).
- •IUnknown
- •5 Билет.
- •1) Операционные системы реального времени и системы управления (классификация систем реального времени, Windows nt & rtx, VxWorks, многопоточность).
- •2) Поддержка com в Windows nt (реестр Widows, dcom, реализация сервера в процессе, реализация сервера за пределами процесса).
- •6 Билет.
- •1)Средства синхронизации потоков на примере Windows nt & rtx (Критическая секция,mutex, семафор, shared memory, приоритеты, ...).
- •2) Распределенная модель системы управления (Пример выделения компонентов на базе геометрического канала).
- •Глава 4. Технологии разработки программного обеспечения систем управления 221
- •7 Билет.
- •2.2.3. Базовые понятия операционной системы реального времени
- •2.2.4. Использование в системах управления операционной системы Windows nt
- •2) Общее представление, назначение и использование ActiveX (место ActiveX-элементов в системе управления, способы их создания на базе mfc и на базе atl).
- •4.4.1. Базовые понятия
- •9 Билет.
- •1)Стратегия диспетчеризации на базе расширения rtx (основные потоки системы управления с использованием Windows nt и rtx).
- •2)Назначение страниц свойств, сериализация свойств (стандартные и пользовательские property page).
- •2) Назначение страниц свойств, сериализация свойств (стандартные и пользовательские property page).
- •10 Билет.
- •1) Базовые функции коммуникационной среды (запрос, управление, отображение, вспомагательные функции; выделение фазы обмена данными).
- •2) Идеи ole-автоматизации (базовый интерфейс iDispatch, его ключевые функции).
4.4.1. Базовые понятия
Компонентная модель СОМ лежит в основе таких технологий разработки прикладного программного обеспечения систем управления, как DCOM, OLE, OLE Автоматизация, ActiveX и ОРС (рис. 134). Компонентная объектная модель СОМ делает стандартную структуру объекта регулярной, управляет его жизненным циклом и общением с другими объектами [81]. Другими словами, СОМ определяет правила структурирования объектов и их распределения в памяти, создания и уничтожения объектов, взаимодействия объектов между собой. Компонентная модель существует в рамках клиент-серверной архитектуры, когда клиент и сервер (компо-
нент) связаны через СОМ-интерфейс. СОМ-интерфейс специфицирует функциональные возможности, которые компонент предлагает некоторой программе или другим компонентам.
Рис. 134. Технологии разработки прикладного программного
обеспечения систем управления
9 Билет.
1)Стратегия диспетчеризации на базе расширения rtx (основные потоки системы управления с использованием Windows nt и rtx).
Один из самых надежных и распространенных алгоритмов диспетчеризации в многозадачных операционных системах (ОС) - это алгоритм циклической диспетчеризации, когда для выполнения конкретной задачи предоставляется некоторый квант времени (time slice). По истечении каждого кванта времени планировщик просматривает очередь активных задач и принимает решение, которой из них передать управление . Подобный алгоритм может быть использован в системе числового программного управления.
На рис. 34 представлены многоуровневая структура Windows NT с RTX и размещение основных потоков системы управления. Внизу находится уровень аппаратной абстракции реального времени (HAL), где реализованы быстродействующие часы и таймеры, механизм разграничения прерываний между RTX и Windows NT. Подсистема реального времени RTSS выполнена в виде драйвера, работает на уровне ядра Windows NT и обеспечивает основные функции и управление ресурсами RTX. Эта подсистема использует сервисные возможности HAL реального времени и Windows NT для работы с быстрыми часами и таймерами и для обслуживания механизма прерывания. Встроенный в RTSS менеджер потоков (thread manager) и планировщик, основанные на фиксированной системе приоритетов, управляют прикладными задачами [26, 27].
Подсистема RTSS обеспечивает интерфейс между процессами RTX и Windows NT в реальном времени с помощью специального сервисного механизма IPC (Inter Process Communication).
В системах управления целесообразно придерживаться традиционной для систем реального времени схемы «один процесс - много потоков
(threads)». Схема имеет такие важные достоинства, как быстродействие и высокая реактивность. Высокая реактивность потоков объясняется меньшим временем переключения их контекстов по сравнению с процессами. Потоки используют общее адресное пространство процесса, а процессы нуждаются в разделяемой памяти.
Согласно принятым представлениям о режимах времени в системе управления, выделим три группы потоков:
жесткого реального времени, работающие в процессе (или в процессах, в зависимости от архитектурного решения) реального времени - это так называемые RTSS-процессы;
мягкого реального времени, функционирующие в Win32- и RTAPI-процессах;
машинного времени, работающие в стандартных Win32-npоцeccax. Обмен данными и синхронизация процессов машинного времени и мягкого реального времени традиционны, это осуществляется на базе общей платформы Win32. Обмен данными между процессами мягкого и жесткого реального времени осуществляется на базе разделяемой памяти (shared memory) - механизма, предоставляемого со стороны RTX.
Процесс RTSS на рис. 36 включает в себя набор потоков, решающих критические задачи в системе управления. Поток диспетчера по сути является call-back функцией таймера (см. рис. 35), в которой реализован планировщик процессов. Планировщик с помощью мютексов или семафоров запускает или останавливает тот или иной поток.
Коммуникационную среду разделим на два потока, один из которых функционирует в режиме жесткого реального времени (поток коммуникационной среды реального времени), а другой работает в режиме мягкого реального времени (поток коммуникационнойсреды Win32). Задача состоит в передаче данных как между потоками внутри процесса, так и между процессами. Передача данных между потоками коммуникационной среды реального времени и потоками коммуникационной среды Win32, как уже отмечалось, осуществляется посредством разделяемой памяти.
Задача интерполяции реализуется потоком Look Ahead, осуществляющим опережающий просмотр и коррекцию кадров управляющей программы, потоком грубой интерполяции, вызываемым обычно с частотой 50 Гц, и потоком тонкой интерполяции, вызываемым обычно с частотой 1-2 мс, осуществляющим сплайновую интерполяция между точками, рассчитанными в рамках грубой интерполяции. Частота вызова интерполяторов параметрически настраивается в планировщике (в потоке диспетчера реального времени). Поток программируемого контроллера решает задачу управления электроавтоматикой и задачу ввода-вывода.
