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

6. Использование в системах управления операционной системы Windows

Windows является операционной системой реального времени, поскольку не имеет достаточного диапазона приоритетов потоков, не позволяет управлять наследованием приоритетов, механизм синхронизации потоков непредсказуем, время реакции на прерывание не­предсказуемо.

Между тем в силу растущей популярности в системах управления опе­рационной системы Windows NT проблема как-то должна быть решена. Из всех существующих предложений по реализации ОСРВ на базе Windows NT практическое значение имеют всего два подхода [24].

Первый подход состоит в запуске Windows NT в виде низкоприоритет­ной задачи операционной системы реального времени (супервизора). При этом предполагается применение ядра классической ОСРВ типа QNX или VxWorks. Существуют решения, в которых в качестве супервизора исполь­зуется Vx Works.

Второй подход заключается в расширении (в смысле реального време­ни) Windows NT. Это может быть оригинальная разработка изготовителя системы управления, например система WinCAT. Другой вариант- использование готового коммерческого решения, например RTX 4.1 фирмы VenturCom.

Оба подхода имеют свои достоинства и недостатки. Однако подход на базе расширения реального времени для Windows NT все же более перс­пективен. Во-первых, в расширении использованы те же типы объектов для управления задачами, что и у ядра Windows NT (мютексы, семафоры и т.д.). В противоположность этому Vx Works использует оригинальные фун­кции и механизмы, формирующие собственный стиль, отличный от стиля Windows. Во-вторых, нет необходимости во второй операционной системе, что сокращает расходы и снимает проблемы установки и стыковки обеих операционных систем на одном персональном компьютере.

7. Стратегия диспетчеризации на базе расширения rtx (Real Time extension)

Один из самых надежных и распространенных алгоритмов диспетче­ризации в операционных системах (ОС) - это алгоритм циклической диспетчеризации, когда для выполнения конкретной задачи предоставляется некоторый квант времени. По истечении каж­дого кванта времени планировщик просматривает очередь активных задач и принимает решение, которой из них передать управление. Подоб­ный алгоритм может быть использован в системе числового программно­го управления.

В системе работают обычный прикладной интерфейса Win32 для Windows NT, а также допол­нительные прикладные интерфейсы реального времени RTAPI и Win32 RT. Дополнительные приклад­ные интерфейсы обеспечивают два режима реального времени: «жесткий» и «мягкий». Это позволяет оптимизировать вычислительные ресурсы сис­темы управления, разделив ее функциональные задачи на три группы:

  • в режиме жесткого реального времени решаются критические зада­чи (интерполяция кадров управляющей программы, ввод-вывод и т.д.), ре­ализованные в процессе RT-сервер;

  • в режиме мягкого реального времени решаются задачи, непосред­ственно связанные с задачами реального времени (например, интерпрета­ция кадра управляющей программы). В отличие от жесткого времени здесь допустимы задержки потока;

• в режиме машинного времени работают остальные стандартные при­кладные модули системы управления (редактор управляющих программ, встроенная САМ-система, система моделирования процесса обработки и т.д.).

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

Первоначально в Windows с подсистемой реального времени (RTSS) создается таймер. По истечении кванта времени стандартный механизм генерирует прерывание, которое обрабатывается прикладной call-back функцией или так называемой функцией обратного вызова. Функция реализует алгоритм планирования (диспетчеризации) задач интерпретаций, интерполяции, вво­да-вывода, коммуникации и интерфейса оператора MMI. В соответствии с обозначенными для системы управления режимами в жестком реальном времени выполняются задачи диспетчеризации, интерполяции, ввода-вы­вода, коммуникации. В мягком реальном времени выполняются задачи интерпретации и обновления экранов интерфейса с оператором, а в фоно­вом процессе-задачи интерфейса с оператором.