BSD Kernel Vs. Ядро Linux? [закрыто]

21

Я хотел знать с технической точки зрения; в чем разница между BSD Kernelи Linux Kernel.
В Linux мы можем скачать исходное ядро, затем patchоно makeи make modulesоно. Даже у нас есть несколько инструментов для редактирования ядра, configтаких как menuconfig, xconfigи ....
Но я не смог найти такого обширного поля на BSD. Во-первых, я могу скачать BSD kernel? Как я мог настроить это? а также ...

Итак, что я спрашиваю: (без ссылки на происхождение и этимологию)

  • Является ли Kernelв каждом случае (в) зависимым от распределения?
  • Способы настройки каждого Kernelи инструменты, доступные для работы?
  • Могут ли быть выполнены какие-либо патч-работы в каждом конкретном случае?
  • Доступность kernelвне сферы распространения? ( Kernel Sources)?
  • Аромат Kernelsдоступен в каждом конкретном случае ( X??BSD/ Linux) Нравится XEN/Vmware/GEN?
R004
источник
2
Не существует одного ядра BSD, так как есть одно ядро ​​Linux ... Ядро FreeBSD, ядро ​​NetBSD, ядро ​​OpenBSD и т. Д. - все они разные (хотя они и используют одну и ту же основу). Вы должны выбрать один из них и прочитать документацию по загрузке и компиляции.
lgeorget

Ответы:

16

Ну, во-первых, вы говорите о BSD, как будто они только один. Технически, я полагаю, есть оригинал, из которого они все были получены - последний выпуск был в 1995 году. Поиск «4.4-Lite2» находит несколько копий, вы можете узнать больше об этом в статье Wikipedia Berkeley Software Distribution .

Производные от него - среди многих вещей * - FreeBSD, OpenBSD и NetBSD. Все три с открытым исходным кодом, и вы можете получить их исходный код. Кто-то, кто говорит, что BSD сегодня, вероятно, ссылается на одного из них.

Если вы хотите быстро просмотреть их, есть перекрестная ссылка на ядро ​​FreeBSD и Linux . Этот сайт также имеет несколько других Unix-подобных ядер.

Однако в отличие от Linux, который существует как отдельный проект ядра, ядра BSD часто являются частью более крупного проекта - они не зависят от дистрибутива. Например, ядро ​​FreeBSD является частью проекта FreeBSD и поддерживается в том же хранилище subversion, что и остальная часть дистрибутива.

В некоторых местах ядро ​​используется без остальной части пользовательского пространства, например, в порту Debian kFreeBSD .


*: Части оригинального BSD действительно зашли довольно далеко. Например, вы увидите заметки о том, что на части программного обеспечения распространяются авторские права Риджентс Калифорнийского университета повсюду. Многое из этого BSD. Например, если вы прочитали многостраничное уведомление, включенное в Windows, оно есть.

derobert
источник
3
Ты имеешь в виду, что у каждого BSDдистрибутива свой, kernelа не у Linuxдитро, которые у всех одинаковые?
r004
2
@ r004 да, у каждого свое ядро.
Дероберт
7

Это характерно для FreeBSD, но метод и организация одинаковы для OpenBSD и NetBSD: это касается трех основных бесплатных систем BSD.

Получить исходные тексты (всей системы) довольно просто, так как вы можете установить все необходимое во время стандартной установки (см. Установка FreeBSD ): введите описание изображения здесь

Вы также можете получить исходные коды всей системы с помощью Subversion: получить FreeBSD через SVN .

Затем вы копируете / редактируете свой файл конфигурации ядра :

cd /usr/src/sys/<your_arch>/conf
cp GENERIC MYKERNEL

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

vi MYKERNEL

Наконец, вы можете сделать и установить ваше собственное ядро:

make buildkernel KERNCONF=MYKERNEL
make installkernel KERNCONF=MYKERNEL

Больше информации:

Ouki
источник