(Я уже заметил, что этот вопрос задавался ранее, но я думаю, что на него не ответили так, как мне хотелось бы понять тему.)
Каковы концептуальные и структурные различия между
- Ядро Linux
- Ядро BSD (скажем, FreeBSD)
Хотя в конце концов они оба являются ядрами - я бы предположил, что могут быть различия в структуре, функциональности и специализации. В каких случаях одно ядро будет иметь преимущество перед другим? (Веб-сервер, база данных, компьютер и т. Д.)
Существуют ли какие-либо совместные усилия для сосредоточения усилий на одном общем ядре или определенных модулях или это все равно будет бессмысленно?
PS: Различные типы лицензий или подходы к доставке / упаковке / обслуживанию не имеют значения в этом контексте. Мне действительно интересно понять, чем они отличаются по структурному, функциональному / функциональному уровню и специализации.
источник
Ответы:
1. Каковы концептуальные и структурные различия между ядром Linux и ядром BSD?
Что касается архитектуры и внутренних структур, то, конечно, существуют различия в том, как это делается (например, lvm против geom , ранняя и сложная функция jail для FreeBSD, ...), но в целом между этими двумя не так много различий:
Тем не менее, есть фундаментальные различия в их подходе и истории:
Как сильно сказано где-то еще :
2. В каких случаях одно ядро будет иметь преимущество перед другим?
Что касается их общей структуры и концепции, то, сравнивая почти ванильное Linux-ядро и FreeBSD-ядро, они более или менее имеют один и тот же общий уровень использования , то есть без какой-либо конкретной специализации (не в реальном времени, не с высокой степенью параллелизма, не ориентированный на игру, не встроенный, ...).
Конечно, есть и некоторые отличия, такие как поддержка ZFS или архитектура geom для FreeBSD по сравнению со многими драйверами или различными файловыми системами для Linux. Но ничего такого общего программного обеспечения, как веб-серверы или базы данных, на самом деле не использовалось бы, чтобы добиться реальных результатов. Сравнения в этих случаях, скорее всего, закончатся неким настраивающим сражением между ними, ничего особенного.
Но некоторые утверждают, что OpenBSD имеет глубокий и последовательный подход к безопасности, в то время как усиленные дистрибутивы Linux являются «просто» модифицированными версиями ванильного Linux-ядра. Это может быть верно для такой сильно специализированной системы, поскольку Steam-OS будет номером один, чтобы играть в игры.
3. Существуют ли совместные усилия по концентрации усилий для одного общего ядра или определенных модулей?
Там нет нет совместных усилий , чтобы сконцентрировать силы для одного общего ядра, так как есть основные лицензии, философские или подходить к решению вопросов.
Если существуют какие-то реальные общие усилия, такие как OpenZFS , большую часть времени это больше о драйверах и концепциях, взятых или вдохновленных друг от друга.
источник
Частичный ответ по нескольким пунктам
Многие варианты часто воспринимаются как плохая вещь, когда снаружи смотрят на разработку открытого исходного кода, но считают, что в природе существует много видов (часто) видов животных, говорят пингвины. Есть 17 . Каждый специализируется на определенном наборе требований, также как и в проектах с открытым исходным кодом (как правило). Естественный отбор позаботится о том, чтобы отсеять открытый исходный код, который со временем станет менее подходящим.
Было бы бессмысленно, иногда это дублирование усилий, но люди, работающие над этими компонентами, тоже не делают этого в вакууме. Они будут смотреть на то, что делают другие, и, если есть подход или алгоритм, они включают его, когда это имеет смысл.
Я не могу говорить о структурных различиях относительно ваших других пуль, но думал, что по крайней мере рассмотрю 2 из них.
источник