(Ya me di cuenta de que esta pregunta se hizo antes, pero creo que no se ha respondido de una manera que me gustaría entender el tema).
¿Cuáles son las diferencias conceptuales y estructurales entre un
- Kernel de Linux
- BSD Kernel (digamos FreeBSD)
Si bien al final del día ambos son núcleos, supongo que puede haber diferencias en la estructura, la funcionalidad y la especialización. ¿En qué escenarios un tipo de kernel tendría una ventaja sobre el otro? (Servidor web, base de datos, informática, etc.)
¿Hay algún esfuerzo conjunto para concentrar fuerzas para un núcleo común o ciertos módulos o eso sería inútil de todos modos?
PD: diferentes tipos de licencia o enfoques de envío / empaque / mantenimiento no son importantes en este contexto. Estoy realmente interesado en comprender cómo difieren en el nivel estructural, funcional / de características y especialización.
fuente
Respuestas:
1. ¿Cuáles son las diferencias conceptuales y estructurales entre un núcleo Linux y un núcleo BSD?
Con respecto a la arquitectura y las estructuras internas, por supuesto, hay diferencias en cómo se hacen las cosas (es decir: lvm vs geom , función de cárcel temprana y compleja para FreeBSD, ...), pero en general no hay muchas diferencias entre los dos:
Aún así, hay diferencias fundamentales en su enfoque e historia:
Como se dijo en otro lugar :
2. ¿En qué escenarios un tipo de kernel tendría una ventaja sobre el otro?
Acerca de su estructura y concepto general, mientras comparan un kernel Linux casi vainilla y un kernel FreeBSD, son más o menos del mismo nivel de uso general , es decir, sin especialización particular (no en tiempo real, no muy paralelo, no orientado al juego, no incrustado, ...).
Por supuesto, hay algunas diferencias aquí y allá, como el soporte nativo de ZFS o la arquitectura geom para FreeBSD frente a los muchos controladores o varios sistemas de archivos para Linux. Pero nada de lo que un software general, como servidores web o bases de datos, realmente usaría para hacer una diferencia real. Las comparaciones en estos casos probablemente terminarían en una batalla de sintonía entre los dos, nada importante.
Pero, algunos argumentarán que OpenBSD tiene un enfoque profundo y consistente de seguridad, mientras que las distribuciones de Linux reforzadas son versiones "simplemente" modificadas del núcleo Linux de vainilla. Esto podría ser cierto para un sistema tan altamente especializado, ya que Steam-OS sería el número uno para jugar.
3. ¿Existen esfuerzos conjuntos para concentrar fuerzas para un núcleo común o ciertos módulos?
No hay un esfuerzo conjunto para concentrar fuerzas para un núcleo común, ya que existen problemas importantes de licencias, filosóficos o de enfoque.
Si existen algunos esfuerzos comunes reales como OpenZFS , la mayoría de las veces se trata más de controladores y conceptos tomados o inspirados unos de otros.
fuente
Respuesta parcial que aborda algunos de los puntos.
Las muchas opciones a menudo se perciben como algo malo cuando en el exterior se busca el desarrollo de código abierto, pero piense en ello como en la naturaleza, hay muchas especies (a menudo) de un tipo de animal, dicen los pingüinos. Hay 17 . Cada uno está especializado para un conjunto particular de requisitos, también lo es con proyectos de código abierto (típicamente). La selección natural se encargará de eliminar el código abierto que es menos apto con el tiempo.
Sería un poco inútil, a veces es una duplicación de esfuerzo, pero las personas que trabajan en estos componentes tampoco lo hacen en el vacío. Examinarán qué están haciendo los demás y, si hay un enfoque o algoritmo, lo incorporarán cuando tenga sentido hacerlo.
No puedo hablar de las diferencias de estructura con respecto a sus otras viñetas, pero pensé que al menos abordaría 2 de ellas.
fuente