GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Was sind die Unterschiede zwischen dem von Ubuntu gelieferten Kernel und dem Upstream-Kernel?

Was sind die Unterschiede im Feature-Set zwischen dem Haupt-Linux-Kernel und dem von Ubuntu verwendeten Kernel? Warum wird Ubuntu vom Hauptkernel abgezweigt, anstatt den Hauptkernel direkt zu verwenden?

Beste Antwort

Die Upstream-Kernel (wenn wir sie zur Verfügung stellen, als Mainline-Kernel bezeichnet) sind einfach die Upstream-Kernel für die angegebene Version, mit ein paar kleinen Konfigurationsänderungen, die hinzugefügt wurden, so dass es minimale Probleme gibt, sie bei einer Ubuntu-Installation zu verwenden.

Der Unterschied zwischen diesen Kerneln und dem für eine Ubuntu-Version veröffentlichten Kernel sind zahlreiche andere Konfigurationsänderungen, Quellpatches* und in einigen Fällen einkompilierte Module und Hardwareunterstützung.

Abgesehen von dem oben Erwähnten unterscheidet sich der zugrunde liegende Code kaum vom Upstream.

*:Quell-Patches sind in den meisten Fällen Änderungen am Standardverhalten des Kernels. Diese sind nicht beschränkt auf:Blacklists, Video-Mackentabellen, eingebaute Module, Quellenänderungen, die noch nicht in Linus‘ Baum oder der Stable-Warteschlange noch nicht vorhanden sind usw.

Quell-Patches verwendet das Team, um Konfigurationsoptionen einzuführen, die erforderlich sind, um die große Auswahl an veröffentlichter Software für eine bestimmte Version von Ubuntu zu unterstützen. In vielen Fällen sind sie erforderlich, damit diese Anwendungen ordnungsgemäß funktionieren. Der grundlegende Unterschied zwischen diesem und dem Upstream-Kernel besteht darin, dass der reine Upstream-Kernel nicht verteilungsspezifisch ist.

Daher sind die Konfigurationen nicht darauf ausgerichtet, dass bestimmte Anwendungen wie erwartet funktionieren. Diese Konfigurationen existieren, um dem Kernel dieses Maß an Änderbarkeit für bestimmte Dinge zu verleihen. Außerdem ermöglicht uns die Verwendung von Quirks, Hardware zu identifizieren, die bestimmte Dinge vom Kernel erfordert, die wir einstellen können, sobald wir sie erkennen.

Dies ist eines der Hauptmerkmale von Linux und einer der Gründe, warum wir im Laufe der Jahre auf so vielen unterschiedlichen Plattformen laufen konnten. Es gibt Zeiten, in denen die Macken und Quellpatches Probleme untereinander verursachen. Während dieser Zeiten arbeiten wir daran, die Probleme mit Änderungen am zugrunde liegenden Kernel-Verhalten zu mindern. In vielen Fällen gelangen diese Änderungen erst nach der Veröffentlichung in den Upstream, was zum großen Teil auf die Notwendigkeit zurückzuführen ist, die Fehlerbehebung ordnungsgemäß zu codieren, zu dokumentieren, was vorgenommen wurde, die Änderungen zu testen und verschiedene andere Tests und Stresstests durchzuführen.

Verwandte:Wie bekomme ich HDMI-Audio auf einem Zotac MAG HD-ND01-U zum Laufen?

In diesen Fällen werden Patches, die für den Upstream bestimmt sind, als Quell-Patches transportiert, ähnlich wie Pre-Stable und Patches, die sich noch nicht im Baum von Linus befinden. Der Link zur Delta-Überprüfungsspezifikation sollte als Referenz dafür dienen, was für die aktuelle Natty-Version des Ubuntu-Kernels überprüft wurde.


Ubuntu
  1. MySQL vs. MariaDB:Was sind die Hauptunterschiede zwischen ihnen?

  2. Debian vs. Ubuntu:Was sind die Unterschiede?

  3. Was sind die Unterschiede zwischen lsof und netstat unter Linux?

  4. Was ist der Unterschied zwischen Kerneltreibern und Kernelmodulen?

  5. Was sind die Unterschiede zwischen rdesktop und xfreerdp?

Cassandra vs. MongoDB – Was sind die Unterschiede?

Terraform vs. Kubernetes:Was sind die Unterschiede?

Was ist der Unterschied zwischen macOS- und Linux-Kernels

Was ist der Unterschied zwischen Rsync und BTRFS unter Linux?

Was ist der Unterschied zwischen Cat und Touch Command?

Was sind die Unterschiede zwischen cPanel und WHM?