![]() |
Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Технология NT . Ядро реального времени
План лекции: 1. Разработка приложений жесткого реального времени 2. Модификация ядра 3. Модификация уровня аппаратных абстракций Windows NT (HAL) 4. Применение ОС РВ
Разработка приложений жесткого реального времени В принципе можно попытаться создать полностью предсказуемое приложение в стандартной chtlt NT, обратив особое внимание на процедуры загрузки и "закрытия" системы и на взаимодействие с другими процессами. Можно, например, написать приложение, основная часть которого исполняется в режиме ядра NT. В этом случае большая часть кода этого приложения должна лежать внутри драйвера. Можно использовать и другие хитрости, стараясь свести к минимуму вероятность возникновения непредсказуемых ситуаций. Но для этого необходим программист высочайшей квалификации, хорошо знающий Windows NT и способный "вычислить" все потенциальные опасности. Естественно, что при создании такого приложения он сможет использовать лишь очень ограниченный набор возможностей NT. Кроме того, подобные приложения чрезвычайно трудно сопровождать и модифицировать.
Модификация ядра Только этот подход способен превратить Windows NT в настоящую операционную систему реального времени с сохранением большинства ее возможностей. Однако исходные тексты ядра Windows NT принципиально недоступны для третьих фирм - это одно из положений политики Microsoft. Поэтому соответствующие модификации могут исходить только от самой компании, что в ближайшее время маловероятно, учитывая ее ориентацию на рынок программного обеспечения общего назначения. Обьем офисного/домашнего рынка компьютеров более 200 млрд. долл., а "промышленного" - менее 5 млрд. Этот подход лежит в основе предложений фирм Radisys, Imagination и LP Elektronik. Имеются две принципиально разные его реализации: · разместить ядро реального времени внутри программы обслуживания прерываний Windows NT или в драйвере устройства; · разместить ядро реального времени вне адресного пространства Windows NT.
Реализация первой идеи была предложена компанией LP Elektronik. Суть ее в том, что на шину ISA ставится дополнительная плата (LP-Realtime Accelerator), снабженная таймером и имеющая возможность управлять большинством линий прерываний ISA. Кроме того, LP Elektronik предлагает технологию написания программ обработки прерываний (ISR) от этой платы. Эта технология позволяет, в частности, "раздуть" программу обработки прерываний до размеров полноценного ядра операционной системы реального времени. Строго говоря, LP Elektronik не предлагает собственных расширений реального времени для Windows NT, однако на базе ее технологии в NT было внедрено ядро операционной системы реального времени VxWorks. Способ взаимодействия между процессами VxWorks и Windows был найден остроумный и легко реализуемый: между NT и VxWorks построена "псевдо-сеть" ТСР/IP. Для этого пришлось разработать всего лишь два драйвера TCP/IP - один для Windows, и один для VxWorks. Фирма Radisys осуществила второй подход, итогом реализации которого стал продукт INtime, основанный на ядре реального времени операционной системы iRMX. Понятно, что и здесь не обошлось без модификации уровня HAL и разработки специфического драйвера. Этот драйвер, как и в остальных реализациях расширений реального времени, предназначен для взаимодействия между процессами NT и процессами реального времени. Radisys разработала также оригинальный механизм внедрения одной операционной системы в другую. Этот механизм управляет одновременным исполнением и целостностью ядер Windows NT и реального времени, осуществляет защиту памяти и разделяет адресные пространства процессов. Процессы и прерывания реального времени при этом всегда имеют приоритет по сравнению с процессами и прерываниями Windows NT. Структура расширений Windows NT c дополнительными ядрами реального времени приведена на рис. 1.
Рис. 1. Структура расширений Windows NT c дополнительными ядрами
Отметим в итоге, что, хотя способы реализации расширений реального времени и различаются, суть у них одна - одновременная работа на одном процессоре двух операционных систем: Windows NT и реального времени. Плюс возможность взаимодействия между процессами реального времени и процессами Windows NT.
|
Последнее изменение этой страницы: 2019-04-21; Просмотров: 197; Нарушение авторского права страницы