Здравствуйте, Dmitry A. Sustretov, Вы писали:
DAS>Пара вопросов по архитектуре микроядра.
DAS>1) почему микроядро — это хорошо ?
DAS>2) почему микроядро не медленнее традиционных ядер ?
DAS>3) каким (эффективным) образом реализуется механизм доставки сообщений серверам ?
DAS>4) есть ли реализации микроядра второго поколения (микромикроядра) ?
Друзья, а не переливаете ли вы из пустого в порожнее?
Давайте условимся, что:
1. Система реального времени — эта такая система, для которой предельное время отклика на каждое событие детерминировано. И не статистически, а жестко.
2. Система жесткого реального времени — это система, не нарушающая предельное время отклика ни при каких обстоятельствах. Система мягкого реального времени — может нарушать.
3. Соответственно, ОС жесткого реального времени строятся по совсем другим законам, нежели обычные: статическая архитектура, статическое планирование и т.д. Ни одна из перечисленных вами систем (за исключением QNX, да и то не совсем) системой жесткого реального времени не является.
4. ОС мягкого реального времени — любая ОС. В зависимости от принятой схемы диспетчеризации и планирования, "реальность" может варьироваться от "очень мягкой" до "весьма неплохой". Но в любом случае система, не гарантирующая 100% детерминизм предельного времени отклика не может использоваться для задач жесткого реального времени.
5. Задачи жесткого реального времени — преимущественно задачи управления критическими процессами. Задачи обработки видео и вообще большинство "обычных" задач — задачи мягкого РВ. Соответственно в большей или меньшей степени для этих задач подходят юниксы, линуксы и виндоусы всех мастей.
6. Кстати, NTшные реалтайм потоки — это попытка создать "почти жесткое" реальное время. Вот только спецификация диспетчера все равно не гарантирует детерминизма предельного времени отклика (хотя на практике оно и обеспечивается), а планировщик не рассчитан на статическое планирование.
Удачи!