LINUX.ORG.RU
ФорумTalks

А почему ещё никто не сделал микроядра с линуксовыми драйверами?

 , , , ,


0

3

Сабж. Представьте, что хорошие линуксовые драйверы работают в качестве юзерспейсных программ, таким образом можно использовать драйверы любых версий вместе, можно даже установить несколько версий одного драйвера, а потом выбирать, какую запустить. Паники ядра никогда не случится, может только отдельный драйвер закрашиться.
Hurd что-то делал в этом направлении, но не очень успешно. И Hurd прибит гвоздями к x86, а хочется чего-то универсального.
Почему нет таких ОС?

★★★★★

А оно вообще возможно? Несколько «драйверов» на одну железку?

Да и... нахрена?

dk-
()

Почему нет таких ОС?

Ну они есть, на самом деле, только проприетарные. В QNX можно целые подсистемы с драйверами выгружать и загружать на лету.

Почему нет опенсорсных? Потому, что ты и я не помогли Hurd-у сделать этого, только и всего. И я уверен, что никто его специально не прибивал гвоздями к x86, просто у чуваков тупо нет времени на разные архитектуры.

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

А у хурда в реальном мире есть отличные от нуля шансы действительно использоваться, а не лишь пилиться из интересу?

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

Разумеется есть. После того, как он будет допилен до некоторого критического состояния.

Микроядерная альтернатива линуксу со схожим юзерспейсом в любом случае имеет смысл. Во-первых, просто потому, что выбор - это хорошо, а во-вторых, наконец-то можно будет непредвзято оценить, так ли уж микроядро тормознее монолитного на современном железе. Правда, последнее можно подогнать под «пилиться из интересу», но интерес тут вполне практический. С той же QNX люди творят чудеса.

hobbit ★★★★★
()

Кажется был вариант с L4, которая гоняла linux для поддержки железа и OS/2 лицом к пользователю.

Да, точно, нашёл. OSFree.

http://www.osfree.org/doku/en:about

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

Оттуда же, откуда и в линуксе. Надо взять и написать.

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

hobbit ★★★★★
()

Представьте, что хорошие линуксовые драйверы работают

до неприличия медленно? Представил. Не понравилось.

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

Несколько «драйверов» на одну железку?

Ну у меня есть предположение. Если драйвера будут использоваться по отдельности, то просто выбирать какой загружать.

ozzee
()

Разве DDE не для этого?

И что там с Minix? Оно живо? Давно релизов не было.

Esteban_Garcia
()

Потому, что микроядерные ОС общего назначения говно все без исключения by design. И вообще микроядро - устаревшая концепция. Нынче модно делать гипервизорные ядра и экзоядра.

Quasar ★★★★★
()

В отечественной реализации ядра l4 программы и под линуксом работают свободно http://l4os.ru/tetris наверное и с драйверами так же реализовано будет.

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

Ну вот как UEFI сейчас, только более развитое и абстрактное.
И из под него уже будут не ядро через модуль загружать а системные среды запускать например от windows или os x или оба сразу.

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

Вылезай из криокамеры, давно уже запрятали обратно.

Был опенсорс одно время, но под несвободной лицензией. Как только сменился хозяин, опенсорс кончился. На законных основаниях.

А вот если бы предыдущие хозяева открыли код под GPL или хотя бы BSD...

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

В QNX можно целые подсистемы с драйверами выгружать и загружать на лету.

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

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

HURD

А почему ещё никто не сделал микроядра с линуксовыми драйверами?

GNU/HURD поддерживает драйверы из Linux. Тему можно закрывать.

Camel ★★★★★
()
Ответ на: HURD от Camel

Поддерживает, только в реальности это вообще не работает. Я же говорю про что-то, что можно было бы применять на самом деле.

CYB3R ★★★★★
() автор топика
Последнее исправление: CYB3R (всего исправлений: 1)

Почему нет таких ОС?

Потому что описанное Вами - фантастическая утопия.

robot12 ★★★★★
()

Я бы мог сделать. И кстати, драйвер Floppy-привода был взят из FreeDOS, который попал в FreeDOS из Linux.

Только смысла в этом не много. Ну разве что один раз попасть на главную страницу ЛОРа, общественность пошумит и забудет.

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

А у хурда в реальном мире есть отличные от нуля шансы действительно использоваться, а не лишь пилиться из интересу?

Близки к нулю.

alman ★★★
()

Зачем тебе микроядро???
яркий представитель которого QNX, ходит по рукам уже лет 30 и никому не нужен кроме там, где он нужен?

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

В отечественной реализации ядра l4 программы и под линуксом работают свободно http://l4os.ru/tetris наверное и с драйверами так же реализовано будет.

Вот спасибо! Первый раз вижу чтобы кто-то давал ссылку на сайт. Буду честен - 100% поддержки POSIX там нет. Хотя бы потому, что пока это писалось, ни один сторонний разработчик не написал что он пробовал и ему на хватило какого-то системного вызова. Да и, по правде говоря, реальные разработчики и не выходили на связь (или очень хорошо маскировались). В основном приходили люди с праздным любопытством.

И да. Системный вызвов poll не портирован с нестабильной 64-битной версии на (относительно) стабильную 32-х битную. Как раз по простой причине, что никто не попросил и не заинтересовался. Т.ч. всё в бэкапах дожидается пока микроядро, сделанное по мотивам L4, заработает в ПЛИС.

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

Соль в том, что при переносе драйвера в микроядро с синхронными вызовами, драйвер несколько худеет - из него выпиливаются коллбэки по таймеру и заменяются суперциклом в пределах драйвера.

Только не стоит смешивать в кучу все микроядра - в некоторых микроядрах от микроядра только название.

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

Ну они есть, на самом деле, только проприетарные.

MINIX3 ?

В QNX можно целые подсистемы с драйверами выгружать и загружать на лету.

Красиво написано. Но верится с трудом. (Есть опыть работы с QNX4 и QNX6 (до 6.5 включительно) Причем ограничения упираются не в софт а в железо. А во встраиваемых системах вообще грузят только то с чем работать нужно и не больше.

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

Не нашел ничего нового кроме бреда.

Да и комменты там кстати.

И да гибрыдные ядра давно выйграли эту войну.

Разупорись.

Сам такой.

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

Не нашел ничего нового кроме бреда.

cat-v с комментрованием выдранных из контекста фраз типа лучше?

И да гибрыдные ядра давно выйграли эту войну.

Какую войну? Был только спор жирного шведа (хотя тогда он ещё вроде не был жирным) и старого профессора, и первый объявил себя победителем в том же смысле, в котором голубь может выиграть в шахматы. Это никак не меняет тот факт, что микроядра используются повсеместно. Как и монолитные.

hateyoufeel ★★★★★
()

сейчас линукс умеет собираться в либу, кстати (lkl)

так что запилить произвольный драйвер в твою любимую микроядерную ОС — вопрос лишь человекочасов

derlafff ★★★★★
()

Ага, сначала раскопать обфусцированный код ядра, потом его портировать
Проще новый написать

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

обфусцированный

Не думал, что такое кто-то станет делать с кодом ядра. Ладно там интерпретируемая всякая лабуда, но компилируемое то зачем?

trueshell ★★★★★
()

Потому что никто не считает, что это стоит затраченного времени. Очевидно же.

kirk_johnson ★☆
()
Ответ на: HURD от Camel

GNU/HURD поддерживает драйверы из Linux. Тему можно закрывать

пруфы.

kinik ★★☆
()

да всё как то мозгов хватало так не делать

darkenshvein ★★★★★
()

Представьте, что хорошие линуксовые драйверы работают в качестве юзерспейсных программ

угу, а ядру ваще прямой доступ к ОЗУ запретить. ещё что выдумаешь?

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