LINUX.ORG.RU
ФорумTalks

Истинное ядро


0

2

QNX Neutrino 6.3 Философия QNX


Ядро - это сердце любой ОС. В некоторых системах «ядро» несет столько функций, что оно уже само по себе является целой ОС! (тонкий намек на толстого пингвина)
Но микроядро ОС QNX Neutrino - это истинное ядро, потому что, во первых, как и ядро исполнительного модуля реального времени, оно очень компактно, а во-вторых, оно предназначенно для выполнения только нескольких базовых функций:
-управление потоками
-управление сигналами
-обмен сообщениями
-синхронизация
-планирование
-управление таймерами
-управление процессами



А в конфигуратор Linux, такое впечатление что, скоро DE и Office запихают, конфигурирование ядра по моему стало уже нетривиальной задачей, особенно если необходимо перейти с ветки на ветку и наложить 100500 патчей.

★★★★★

Ну да. Надо было делать на микроядре или на худой конец на гибридном.

fragment
()

Неплохо вбросил.

GotF ★★★★★
()

если в ядре нет garbage collector-а, то оно не умеет управлять памятью - в топку.

StrongDollar
()

А в БСД какой размер ядра?
Поддерживаю вопрос про драйвер ФС и контролер. Как оно грузится то будет?

ymuv ★★★★
()
Ответ на: комментарий от Lavos


Если в большинстве ОС драйверы устройств должны быть встроенны в структуру ОС, в QNX Neutrino они могут запускаться и останавливаться как стандартные процессы. В результате добавления новых драйверов устройств не нарушает работу какой либо части ОС, так как драйверы могут разрабатываться и подвергаться отладке как обычные приложения.

splinter ★★★★★
() автор топика

Minix, Hurd, не?

Deleted
()

Если микроядро это так замечательно, то почему тогда суперкомпьютеры не используют QNX?

Tark ★★
()

конфигурирование ядра по моему стало уже нетривиальной задачей

Я не уверен, что вообще когда-то было тривиальной задачей. Всё-таки, ядро сконфигурить — это не кряк от винды скачать

name_no ★★
()
Ответ на: комментарий от splinter

Неужто у тех, кто строит суперкомпьютеры не хватит денег и знаний на свое ядро или лицензирование этого?

Tark ★★
()
Ответ на: комментарий от ymuv

Как я понимаю, загрузка драйверов ФС выполняется администратором процессов (который, скомпонован с микроядром в один модуль). В конце концов, как то оно грузиться :-D.

splinter ★★★★★
() автор топика
Ответ на: комментарий от name_no

в ядрах 2.2 - 2.4 было как-то полегче. А сейчас не редкость даже отсутсвие внятных комментариев к опциям ядра.

splinter ★★★★★
() автор топика
Ответ на: комментарий от ymuv

Как оно грузится то будет?

Так же, как обычное ядро загружается: драйверы пакуются в образ вместе с ядром, загрузчик загружает образ в память.

AptGet ★★★
()
Ответ на: комментарий от Tark

Из-за того, что при переключении контекста увеличиваются потери в два раза, чем при «обычной» архитектуре.
Микроядро оооочень хорошо работает, если использует байт-код (см Phantom OS) и разделяет адресное пространство на этапе трансляции, а не выполнения. Такой подход может привести к очень высокой производительности и другим плюшкам...
Но QNX не используют в суперкомпьютерах еще по ряду причин: например проприетарность. Да и сама QNX создавалась для встраиваемых систем.

svmk
()
Ответ на: комментарий от Tark

Неужто у тех, кто строит суперкомпьютеры не хватит денег и знаний на свое ядро или лицензирование этого?

для HPC не нужно RTOS.

exception13 ★★★★★
()
Ответ на: комментарий от splinter

А микроядро QNX применимо только для режима real-time? И подогнать это микроядро под нужные задачи гораздо сложнее, чем огромное и сложноконфигурироемое ядро linux?

Tark ★★
()
Ответ на: комментарий от svmk

переключении контекста увеличиваются потери в два раза, чем при «обычной» архитектуре

поэтому для RTOS часто используется стандарт «один процесс - много потоков» например в RTEMS. да и образ самой ОСи в таком случае представляет собой монолитный бинарь.

exception13 ★★★★★
()
Ответ на: комментарий от exception13

В данном контексте я говорил, не про ОСРВ, а про микроядро. Почему там используется такой сякой линукс, если можно использовать «истинное ядро»?

Tark ★★
()
Ответ на: комментарий от svmk

Из-за того, что при переключении контекста увеличиваются потери в два раза, чем при «обычной» архитектуре.

я очень слабо разбираюсь в архитектуре процессоров, и поэтому никак не могу понять - почему в процессоры встраивают ускорители шифрования, 3d-графики и другие странные штуки, но не ускоряют переключение контекста?

inoremap ★★
()

Срачу «монолит vs микроядро» всего на 1 год меньше, чем линуксу. Только вот ни одно микроядро не готово для десктопа, только монолиты и гибриды.

Deleted
()
Ответ на: комментарий от Deleted

Срачу «монолит vs микроядро» всего на 1 год меньше, чем линуксу.

Этот топик не срач «монолит vs микроядро», а вопрос нахрена в ядро пихать 100500 драйверов, кодировок, неродных линуксу файловых систем, всевозможнок крипто апи, и прочего хлама.

splinter ★★★★★
() автор топика
Ответ на: комментарий от splinter

Слишком недоразвиты для реальности.

Если их доразвить, то внезапно окажется что в них есть «100500 драйверов, кодировок» и так далее.

AptGet ★★★
()
Ответ на: комментарий от Deleted

Микроядра есть бесплатные и свободные. Например, Minix 3 или там GNU/Hurt.

Оба говно.

geekless ★★
()
Ответ на: комментарий от splinter

Этот топик не срач «монолит vs микроядро», а вопрос нахрена в ядро пихать 100500 драйверов, кодировок, неродных линуксу файловых систем, всевозможнок крипто апи, и прочего хлама.

Незачем. Но сам этот вопрос автоматически переростает в срач «монолит vs микроядро».

geekless ★★
()
Ответ на: комментарий от splinter

Потому, что:

1) это не хлам

2) что ты предлагаешь? распилить ядро на 100500 мелких пакетиков с исходниками для dkms?

Deleted
()
Ответ на: комментарий от Deleted

распилить ядро на 100500 мелких пакетиков с исходниками для dkms?

dkms — это нездоровое порождение монолитного ядра. Поверх микроядра компоненты могут собираться обычным ./configure && make && make install && зашить_в_пакет

geekless ★★
()
Ответ на: комментарий от splinter

Ыыы. Так тебе микроядро или ОС? Ты уж определись.

Как микроядро, оно рулит и педалит. Как ОС, там еще нихрена нет.

geekless ★★
()
Ответ на: комментарий от geekless

dkms — это нездоровое порождение монолитного ядра.

Сама концепция монолитного ядра не нуждается в вещах типа dkms. Это порождение именно Linux. Где между разными версиями или даже билдами одного ядра нет бинарной совместимости.

Deleted
()
Ответ на: комментарий от Deleted

это ты как то очень субъективно, в отличии от перечисленного убожества у qnx есть вменяемое DE, и нормальное устоявшееся API.

splinter ★★★★★
() автор топика
Ответ на: комментарий от geekless

А насколько оно POSIX-совместимо и является ли оно юниксоподобным?

PS. На сайте лень искать.

Deleted
()
Ответ на: комментарий от splinter

QNX развивается с 81 года, как был микроядром так и остался.

И в нем куча «ненужного» кода поддержки неродных ФС и прочих драйверов в серверах.

Монолитные RTOS тоже компактны. Но на десктопах и серверах их не видно.

AptGet ★★★
()
Ответ на: комментарий от MrHouse

да писец, я тоже не понял кто тут кто.

splinter ★★★★★
() автор топика
Ответ на: комментарий от splinter
Ответ на: комментарий от MrHouse

Блин, у geekless обезьяна имеет больший размер и меньшую яркость, чем у меня. Сразу видно, кто есть кто.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.