QNX Neutrino

Детальный разбор дистрибутивов и других UNIX-like ОС

Модераторы: Olej, bellic, adminn, vikos

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение Olej » 26 дек 2012, 13:20

SimpleUser писал(а):со студентами вышел спор насчёт минимально возможной запускаемой конфигурации QNX Neutrino, скажем, для платки какой-нибудь на 100 килобайтах.
А это никак не получится. Это такое нужно что-то на PIC или AVR контроллерах лепить.
SimpleUser писал(а):Из 2 вариантов выбирали: 1.Микроядро+администратор процессов=procnto
2. Микроядро+какое-нибудь приложение из одного файла с последовательно выполняющимся кодом.
Или, может быть, правильно будет минимально возможная конфигурация для кофеварки какой-нибудь? Т.е. procnto+приложение?
А микроядро одно может запуститься(всего 40кБ!)?
1. запустить само микроядро без менеджера процессов procnto нельзя (разработчик QSSL одно время парили мозги про такую конфигурацию, но потом и сами признали);

2. микроядро ~40Kb это было в QNX4, в нынешнем QNX6 это в несколько раз больше, в QNX4 было <60 системных вызовов, в QNX6 сейчас их под 120 ... в Linux 3.X - ~350, так что микроядро-макроядро разница сильно смазывается (по размеру, но не по смыслу);

3. я несколько раз собирал минимальную систему QNX (описано где-то на qnx.org.ru и был такой форум qnxclub.net), минимально во что удаётся собрать систему + стек TCP/IP + минимальный shell хотя бы через последовательный порт (а зачем вам голая система и глухо-немая?) - это ~800Kb;

4. но! то-же микроядро, даже занимая в статике (файле) пусть и 40Kb, должно развернуться, и создать все необходимые структуры, таблицы для управления ОС (те же кольцевые очереди потоков для каждого уровня приоритета), минимальная QNX разворачивается в RAM порядка 4Mb.

Вывод: хоть QNX и позиционируется как ОС для встраиваемых систем (в том числе), это вовсе не значит, что её можно затолкать и использовать для всяких игрушечных перделок типа кофеварок, это всё рекламные трюки - для перделок нужно использовать аппаратные или полуаппаратные реализации, на микропроцессорах, микроконтроллерах и т.п., то, что во множестве представлено на всероссийском сайте по разработке перделок ;-) : http://electronix.ru/forum/index.php?. Это всё должно крутиться под управлениеммини-поделок из области "ОС на коленке": uC/OS, FreeRTOS, scmRTOS, NuttX RTOS ... имя им легион!

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение Olej » 26 дек 2012, 13:32

Olej писал(а): 2. микроядро ~40Kb это было в QNX4, в нынешнем QNX6 это в несколько раз больше, в QNX4 было <60 системных вызовов, в QNX6 сейчас их под 120 ... в Linux 3.X - ~350, так что микроядро-макроядро разница сильно смазывается (по размеру, но не по смыслу);
На сегодня ресурсоёмкость минимальных конфигураций QNX и Linux, если их собрать минимально и затолкать в embedded железку, насколько сильно сближается, что теряется смысл для этого использовать QNX. Это видно и по массовому использованию ныне Linux во встраиваемых сетевых железках (роутерах, модемах, ADSL, ... ридерах - книжках электронных). QNX потерял эту нишу.

Единственная область, где применение QNX на сегодня оправдано - это системы экстремальной надёжности и живучести: разные системы обеспечения безопасности, аварийные системы, и т.д.

Не удивительно, поэтому, что её (QNX) хозяева перепродавали систему с рук на руки несколько раз за последние 10 лет, и в результате, она осталась, по главному своему предназначению, системой для коммуникаторов Blackberry — это хорошее применение, но это радикальное сужение сфер применимости, и, похоже, это и будет то пристанище, "где сердце успокоится" ;-) :-(

SimpleUser
Писатель
Сообщения: 69
Зарегистрирован: 02 авг 2012, 14:22
Откуда: Москва
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение SimpleUser » 01 янв 2013, 20:19

Всех с Новым Годом и Olej персонально! :-)

По поводу размеров файлов. Года два назад я находил в интернете сравнение QNX Neutrino c QNX 4. Там из существенных новшеств было сказано, что размер ядра ОСРВ Neutrino теперь составляет 42кб вместо 80кб в QNX 4. Уменьшение размеров достигнуто за счёт сокращения числа используемых ядром системных вызовов, т.к.часть их перенесена в Администратор Процессов и некоторые другие, и размер модуля procnto теперь составляет 100-120кб. Сайт не помню, но цифры запомнил точно.
В самом QNX Neutrino 650 размер файла procnto составляет около 870кб. Я слышал объяснение, будто бы система резервирует дополнительные экстенты в предположении, что запись в файл будет продолжена -- т.е. Proc будет использовать это пространство для записи новых процессов или ядро для сохраняемого контекста задачи.
Или все 870кб -- это исполняемый код? Насколько верны эти предположения?

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение Olej » 01 янв 2013, 22:45

SimpleUser писал(а): По поводу размеров файлов. Года два назад я находил в интернете сравнение QNX Neutrino c QNX 4. Там из существенных новшеств было сказано, что размер ядра ОСРВ Neutrino теперь составляет 42кб вместо 80кб в QNX 4. Уменьшение размеров достигнуто за счёт сокращения числа используемых ядром системных вызовов, т.к.часть их перенесена в Администратор Процессов и некоторые другие, и размер модуля procnto теперь составляет 100-120кб. Сайт не помню, но цифры запомнил точно.
Это уже маркетинговые игрища: что и как называть, где микроядро, а где "Администратор Процессов"(с), без которого микроядро не может использоваться. "Хоть в лоб, хоть по лбу" ;-)
Но в итоге, это полная ахинея:
- в QNX4 системных вызовов <64
- в QNX6 системных вызовов >120 (например, всё, что связано а). с потоками - pthread_*() и б). с сигналами UNIX).
Можете справиться на qnx.org.ru форуме: там назовут точные цифры + полностью подтвердят то, что я сказал.
SimpleUser писал(а): В самом QNX Neutrino 650 размер файла procnto составляет около 870кб. Я слышал объяснение, будто бы система резервирует дополнительные экстенты в предположении, что запись в файл будет продолжена -- т.е. Proc будет использовать это пространство для записи новых процессов или ядро для сохраняемого контекста задачи.
Или все 870кб -- это исполняемый код? Насколько верны эти предположения?
После того, как система инициализируется (экстенты и пр. ;-) ) - там будет ~4Mb, для x86 это примерно минимум.

P.S. Ещё раз!: QNX никогда не была системой, ориентированной на микро-применения, это полновесная система со сложными механизмами... С какой бы ей стати в минимуме быть намного компактнее того же Linux?
А уж QNX6, когда они навесили над API слой совместимости с POSIX, стала, конечно, в разы более громоздкой, чем QNX4.

SimpleUser
Писатель
Сообщения: 69
Зарегистрирован: 02 авг 2012, 14:22
Откуда: Москва
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение SimpleUser » 17 янв 2013, 11:23

Olej спасибо за объяснение! Вот так равеиваются легенды... я-то, начитавшись рекламных статей, действительно решил, что Neutrino это универсальная ОСРВ, некое золотое сечение, пригодный как для высокопроизводительных SMP-систем, так для встраивания в пром.компьютеры с ограниченными аппаратными ресурсами. По крайней мере, более неприхотливая к ним, чем QNX4.

Для развеивания иллюзий по службе времени Neutrino хочу попросить Вашу статью, представленную когда-то(судя по ссылке) на qnx.org.ru. Анонс гласит:
Выложена (http://qnx.org.ru/docs-devel/clock.html) новая статья: "QNX: служба времени".
, но по этой ссылке ничего уже нет. Если Вас не затруднит, очень прошу(много раз пожалуйста ;-) ) выложить эту статью где-нибудь, если её найдёте, или прислать мне на почту. Заранее благодарен.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение Olej » 17 янв 2013, 15:42

SimpleUser писал(а):Для развеивания иллюзий по службе времени Neutrino хочу попросить Вашу статью, представленную когда-то(судя по ссылке) на qnx.org.ru. Анонс гласит:
Выложена (http://qnx.org.ru/docs-devel/clock.html) новая статья: "QNX: служба времени".
, но по этой ссылке ничего уже нет. Если Вас не затруднит, очень прошу(много раз пожалуйста ;-) ) выложить эту статью где-нибудь, если её найдёте, или прислать мне на почту. Заранее благодарен.
1. Как-раз служба времени QNX 6 - это лучшая служба времени всех других ОС, что и необходимо системе реального времени.

2. Все мои статьи того времени были включены в книгу "Практика работы с QNX"
Изображение
Я где-то в Интернет, для себя ;-) , скачивал выложенную эту книгу - если найду, то выложу ссылку.

3. Где-то и в архивах qnx.org.ru есть собрание всех статей ... нужно только ссылку на те архивы найти :-?

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение Olej » 17 янв 2013, 16:35

Olej писал(а): 2. Все мои статьи того времени были включены в книгу "Практика работы с QNX"
Изображение
Я где-то в Интернет, для себя ;-) , скачивал выложенную эту книгу - если найду, то выложу ссылку.
Кстати, поиск Yandex: скачать книгу "Практика работы с QNX"
Нашлась
1 тыс. ответов
Ну вот, например, Практика работы с QNX
Название: Практика работы с QNX
Автор: Дмитрий Алексеев, Евгений Видревич, Алексей Волков, Егор Горошко, Михаил Горчак, Роман Жавнис, Дмитрий Сошин, Олег Цилюрик, Андрей Чиликин, Александр Кирсак
Серия: Внесерийное издание
Издательство: КомБук
Год выпуска: 2004 год
Страниц: 432 страниц
Язык: Русский
Формат файла: RAR/DJVU
Размер файла: 6.19 MB
Авторы сборника - практикующие программисты-разработчики.
Эта книга родилась как непреднамеренный продукт деятельности русскоязычного сообщества пользователей QNX, объединившегося вокруг некоммерческого Internet проекта "QNX Realtime Platform: Русский Портал", созданного в сентябре 2000 года энтузиастами Дмитрием Алексеевым (Санкт-Петербург) и Дмитрием Васильевым (Самара, сейчас Санкт-Петербург). Но сегодня, на форуме этого портала ежедневно присутствуют несколько сот профессионалов из России, Украины, Белоруссии, Канады, Ирландии, Дании, Финляндии, Южной Кореи, Польши, Болгарии...
Многие из участников форума описывали свои опыты использования механизмов OS QNX, проводили тесты, пытались осмыслить артефакты процессов установки и настройки... Из этих материалов и родилась предлагаемая книга.
И там ссылочка внизу: скачать

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение Olej » 17 янв 2013, 16:49

SimpleUser писал(а):хочу попросить Вашу статью, представленную когда-то(судя по ссылке) на qnx.org.ru. Анонс гласит:
Выложена (http://qnx.org.ru/docs-devel/clock.html) новая статья: "QNX: служба времени".
, но по этой ссылке ничего уже нет.
А если вам только эту статью, то вот вам ссылка, где она ещё сохранилась для чтения: QNX: служба времени.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение Olej » 17 янв 2013, 22:11

Olej писал(а): 2. Все мои статьи того времени были включены в книгу "Практика работы с QNX"
Ещё можете посмотреть (не эту статью, но другие вещи, ... проливающие свет на ту же тему ;-) ) вот здесь: QNX/UNIX: анатомия параллелизма.
Изображение

Вот здесь можете эту книжку свободно скачать.

SimpleUser
Писатель
Сообщения: 69
Зарегистрирован: 02 авг 2012, 14:22
Откуда: Москва
Контактная информация:

Re: QNX Neutrino

Непрочитанное сообщение SimpleUser » 18 янв 2013, 12:39

Olej огромное спасибо! Прекрасные ссылки!

Ответить

Вернуться в «Дистрибутивы Linux и родственные ОС»

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и 6 гостей