web-dev-qa-db-fra.com

Différence conceptuelle entre le noyau BSD Linux et (gratuit)

(J'ai déjà remarqué que cette question a été posée auparavant, mais je pense que cela n'a pas été répondu d'une manière que j'aimerais comprendre le sujet.)

Quelles sont les différences conceptuelles et structurelles entre un

  • Noyau Linux
  • Noyau BSD (disons FreeBSD)

À la fin de la journée, ils sont tous deux des noyaux - je supposerais qu'il pourrait y avoir des différences de structure, de fonctionnalité et de spécialisation. Dans quels scénarios un type de noyau aurait-il un avantage sur l'autre? (Serveur Web, base de données, informatique, etc.)

Existe-t-il des efforts conjoints pour concentrer les forces pour un noyau commun ou certains modules ou cela serait-il inutile de toute façon?

PS: Différents types de licence ou expédition/emballage/entretien des approches ne sont pas importants dans ce contexte. Je suis vraiment intéressé à comprendre comment ils diffèrent sur le niveau structurel, fonctionnel/fonctionnel et spécialisation.

21
binaryanomaly

1. Quelles sont les différences conceptuelles et structurelles entre un noyau Linux et un noyau BSD-Kernel?

En ce qui concerne l'architecture et les structures internes, il existe bien entendu des différences sur la manière dont les choses sont effectuées (= LVM vs geom, tôt et complexe Jail Fonctionnalité pour FreeBSD, ...), mais dans l'ensemble il n'y a pas beaucoup de différences entre les deux:

  • BSD * Le noyau du noyau et du linux ont tous deux évolué d'une approche purement monolithique de quelque chose d'hybride/modulaire.

Pourtant, il existe des différences fondamentales dans leur approche et leur histoire:

  • BSD-Kernel utilise Licence BSD et linux-kernel utilise licences GPL.
  • BSD-Kernel ne sont pas des noyaux autonomes mais sont développés comme étant ne partie d'un tout. Bien sûr, il s'agit simplement d'un point de vue philosophique et non d'une technique, mais cela donner la cohérence du système.
  • BSD-Kernel est développé avec un point de vue plus conservateur et plus préoccupant de rester conforme à leur approche que d'avoir des fonctionnalités de fantaisie.
  • Linux-Kernel comporte davantage sur les pilotes, les caractéristiques, ... (plus le mieux).

Aussi grandement a déclaré ailleurs :

C'est Conception et ordre intelligent (BSD *) Versus Sélection naturelle et chaos (GNU/Linux).

2. Dans quels scénarios un type de noyau aurait un avantage sur l'autre?

À propos de leur structure générale et de leur concept, tout en comparant une quasi-vanille linux-noyau et un noyau FreeBSD-Kernel, ils sont plus ou moins de même niveau d'utilisation générale, c'est sans spécialisation particulière (pas réel Temps, pas hautement parallèle, pas orienté jeu, non intégré, ...).

Bien sûr, il existe quelques différences ici et là, telles que le support ZFS natif ou l'architecture GEOM pour FreeBSD par rapport aux nombreux pilotes ou divers systèmes de fichiers de Linux. Mais rien de logiciel général tel que des serveurs Web ou des bases de données n'utiliserait vraiment pour faire une réelle différence. Les comparaisons dans ces cas se terminerraient probablement dans une bataille de réglage entre les deux, rien de majeur.

Mais, certains diraient que openbsd Une approche profonde et cohérente de la sécurité, tandis que les distributions de Linux durcis sont des versions modifiées "juste" de la vanille Linux-Nernel. Cela pourrait être vrai pour un tel système fortement spécialisé, comme cela serait Steam-OS Soyez le numéro un pour jouer à des jeux.

. Existe-t-il des efforts conjoints pour concentrer les forces pour un noyau commun ou certains modules?

Il y a non effort commun pour concentrer les forces pour un noyau commun, car il existe des licences majeures, des problèmes philosophiques ou d'approche.

Si des efforts courants réels existent tels que OpenZFS , la plupart du temps, il s'agit davantage de pilotes et de concepts pris ou inspirés les uns des autres.

24
Ouki

réponse partielle adressant quelques-uns des points

Les nombreuses options sont souvent perçues comme une mauvaise chose lorsque sur l'extérieur examinant le développement open source, mais y réfléchit comme dans la nature, il existe de nombreuses espèces (souvent) d'un type d'animal, disent des pingouins. Il y a 17 . Chacun est spécialisé dans un ensemble particulier d'exigences, tant avec des projets open source (typiquement). La sélection naturelle prendra soin de désherber la source ouverte moins apte au fil du temps.

Existe-t-il des efforts conjoints pour concentrer les forces pour un noyau commun ou certains modules ou cela serait-il inutile de toute façon?

Serait une sorte d'inutile, c'est une duplication d'efforts parfois, mais les personnes qui travaillent sur ces composants ne le font pas non plus dans un vide non plus. Ils vont regarder autour de ce que font les autres et s'il y a une approche ou un algorithme, ils l'incorporent quand il est logique de le faire.

Je ne peux pas parler aux différences de structure concernant vos autres balles, mais je pensais au moins aborder 2 d'entre eux.

5
slm