LINUX.ORG.RU

как собрать монолитное ядро ?

 


0

1

уважение*1000

подскажите пожалуйста, как собрать монолитное ядро. не то, монолитное,которое без модулей,а то которое монолитно,что в смысле что все службы и функции, будут выполняться в одном пространстве. то есть это должен быть один большой процесс, оно должно быть на носителе,как сплошной бинарный файл.

какая версия ядра понадобится для сборки? и главное,что включить и что отключить чтобы оно таким стало?

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

В линуксе так и есть, всё ядро в одном адресном пространстве.

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

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

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

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

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

нет,тут еще надо,чтобы вызов функций был напрямую,а не посредством ipc

linuxpc ()

Это можно сделать, но отключаться многие функции, упадет производительность, пропадет безопасность совсем.

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

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

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

Ну и DOS справлялся, не вижу каких то особых проблем.

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

Тут надо сразу свою ОС, что бы быстро было, и свой софт.

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

Не, фантом это из другой оперы. Есть такой проект — А2 ОС написана на ActiveOberon , но там все модулями, не один бинарник, зато все пашет в 0 кольце.

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

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

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

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

linuxpc ()

все службы и функции, будут выполняться в одном пространстве. то есть это должен быть один большой процесс, оно должно быть на носителе,как сплошной бинарный файл.

Никак.

IPR ★★★★★ ()

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

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

это попытка собрать.... собрать монолитное ядро. собрать для того чтобы понять.

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

Если запустить DOS поверх jailhouse, получится монолитное ядро под монолитным ядром запущенном в гипервизоре на монолитном ядре поверх гипервизора в процессоре. Вы понимаете, в чём отличие дос от линукс?

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

И в видеокартах нвидиа тоже по-моему что-то такое. А ещё там risc-v с момента его появления (который местные обитатели считают ненужным).

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

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

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

ну все тогда. итог: Линукс имеет микроядро. монолитным он не может быть. это я понял от Вас. то есть я резюмировал все что написали тут.

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

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

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

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

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

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

Линукс и есть монолитное ядро. Но ты же хочешь впендюрить в него ещё и демонов да чтобы одним бинарником. Что как бы смахивает на дурь.

А так… линукс же работает в эмбедовке, и даже на процах где нет разделения на кернел/юзер спейс

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

Линукс имеет микроядро

Тогда почему ошибка в модуле ядра может привести к краху всей системы? Почему модули и ядро работают в одном адресном пространстве? Если тебя смущает то, что модули могут подгружаться, то открой файл .config в каталоге с исходниками ядра и поменяй все =m на =y.

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

да все,вы уже что-попало говорите. то Линукс не может быть монолитным ядром,то может.

linuxpc ()

Ядро Linux и так монолитное (даже если с модулями — всё равно всё в одном адресном пространстве). Микроядром он быть не может.

Если ты хочешь, чтобы в том же адресном пространстве выполнялись и все демоны и пользовательский софт и небо и Аллах — это уже не монолитное ядро называется, это называется наркомания. «Службы» (демоны) не являются частью ядра, как и остальной софт кроме ядра и его модулей.

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

так поэтому я и спрашиваю. учитель одно говорит, в книгах пишут другое,а на форуме ни с чем из этого,что пишут и говорят учителя не соглашаются , но отправляют читать книги, с которыми они также не соглашаются. я не пойму вас.

linuxpc ()

+

Короче говоря, ты запутался в формулировках, и говоришь не то, что на самом деле хочешь. Что ты на самом деле хочешь — не совсем понятно.

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

Да все во всём соглашаются. Ядро Линукс — монолитное. Всегда, само по себе, так написано — его не надо как-то дополнительно таковым делать. Более того, сделать его не монолитным нельзя (не переписывая, конечно). Всё ядро и его модули как раз и выполняются в одном адресном пространстве.

То, что хочешь ты — не совсем понятно. Но понятно одно — это не называется монолитным ядром, и явно выходит за рамки ядра. Что именно тебе хочется, понять пока невозможно. То ли впихнуть всю ОС в ядро, то ли…

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

да блин,это написано в учебнике. ко мне какие могут быть притензии? мне надо понять что такое монолитное ядро. я хочу его собрать. учебник заявляет,что Линукс имеет микроядро,потому как все службы общаются через ipc. вызов функций ядра происходит не напрямую. ядро не монолитно.

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

учебник заявляет,что Линукс имеет микроядро

Выкинь этот учебник, в нём написан бред.

все службы общаются через ipc

Службы не являются частью ядра. И называются демонами, а не службами.

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

ну взял бы уже да объяснил и подкрепил свои объяснения фактами,что ядро монолитно. или опроверг это. а так это просто пустословие. можно также сделать вывод,что вы как и я нуб.

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