Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
билет 5-6.docx
Скачиваний:
1
Добавлен:
18.04.2019
Размер:
49.86 Кб
Скачать

ЭКЗАМЕНАЦИОННЫЙ БИЛЕТ № 5

Вопрос 1

1. Разработка приложений жесткого реального времени

В принципе можно попытаться создать полностью предсказуемое приложение в стандартной среде NT, обратив особое внимание на процедуры загрузки и "закрытия" системы и на взаимодействие с другими процессами. Можно, например, написать приложение, основная часть которого исполняется в режиме ядра NT. В этом случае большая часть кода этого приложения должна лежать внутри драйвера. Можно использовать и другие хитрости, стараясь свести к минимуму вероятность возникновения непредсказуемых ситуаций. Но для этого необходим программист высочайшей квалификации, хорошо знающий Windows NT и способный "вычислить" все потенциальные опасности. Естественно, что при создании такого приложения он сможет использовать лишь очень ограниченный набор возможностей NT. Кроме того, подобные приложения чрезвычайно трудно сопровождать и модифицировать.

2. Модификация ядра

Только этот подход способен превратить Windows NT в настоящую операционную систему реального времени с сохранением большинства ее возможностей. Однако исходные тексты ядра Windows NT принципиально недоступны для третьих фирм - это одно из положений политики Microsoft. Поэтому соответствующие модификации могут исходить только от самой компании, что в ближайшее время маловероятно, учитывая ее ориентацию на рынок программного обеспечения общего назначения. Обьем офисного/домашнего рынка компьютеров более 200 млрд. долл., а "промышленного" - менее 5 млрд.

Этот подход лежит в основе предложений фирм Radisys, Imagination и LP Elektronik. Имеются две принципиально разные его реализации:

  • разместить ядро реального времени внутри программы обслуживания прерываний Windows NT или в драйвере устройства;

  • разместить ядро реального времени вне адресного пространства Windows NT.

Структура расширений NT в версии VenturCom

Реализация первой идеи была предложена компанией 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 дополнительными ядрами Структура расширений NT c дополнительными ядрами реального времени

Отметим в итоге, что, хотя способы реализации расширений реального времени и различаются, суть у них одна - одновременная работа на одном процессоре двух операционных систем: Windows NT и реального времени. Плюс возможность взаимодействия между процессами реального времени и процессами Windows NT.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]