Was sind heute die Hauptunterschiede zwischen Unix- und Linux-Kerneln?

9

Ich weiß, dass viele der gleichen Programme fehlerfrei auf beiden Kerneln laufen. Ich weiß, dass die beiden Kernel historisch gesehen unterschiedlichen Ursprungs waren. Ich weiß auch philosophisch, dass sie für verschiedene Dinge standen. Meine Frage ist heute, im Jahr 2011, was unterscheidet einen Unix-Kernel von einem Linux-Kernel und umgekehrt?

DCIndieDev
quelle
2
Es gibt wahrscheinlich mehr Unterschiede zwischen Unix-Kerneln als zwischen einigen von ihnen und Linux.
Vartec

Antworten:

14

Es gibt kein einzigartiges Ding namens "Unix-Kernel". Es gibt mehrere Nachkommen des ursprünglichen Unix-Kernel-Quellcode-Trunks, die in verschiedenen Phasen Verzweigungen daraus gespalten haben und die sich je nach ihren eigenen Anforderungen separat entwickelt haben.

Die gängigsten Betriebssysteme finden sich heutzutage in Betriebssystemen, die entweder aus System V-Quellcode erstellt wurden: AIX, HPUX, Solaris oder aus BSD-Quellcode, OpenBSD, FreeBSD und Mac OS / X.

Alle diese Kernel haben ihre besonderen Stärken und Schwächen, genau wie Linux und andere "von Grund auf" Unix-ähnliche Kernel (Minix, Gnu Hurd, ...).

Hier ist eine nicht erschöpfende Liste der Bereiche, in denen Unterschiede in keiner bestimmten Reihenfolge beobachtet werden können:

  • Unterstützung der CPU-Architektur
  • Verfügbarkeit von Treibern
  • Unterstützte Dateisysteme
  • Virtualisierungsfunktionen
  • Planungsfunktionen (alternative Planungsklassen, Echtzeit, ...)
  • Modularität
  • Beobachtbarkeit
  • Abstimmbarkeit
  • Verlässlichkeit
  • Performance
  • Skalierbarkeit
  • API-Stabilität zwischen Versionen
  • Open / Close Source, Lizenz verwendet
  • Sicherheit (zB: Berechtigungsgranularität)
  • Speicherverwaltung
jlliagre
quelle
1
Ich weiß nicht, ob dies eine Menge Arbeit ist, aber wenn es nicht so schlimm ist, können Sie auf jede dieser Kategorien ein wenig näher eingehen?
DCIndieDev
Wow, hatte keine Ahnung, dass Mac OS / X ein Kernel ist ...
Piperchester
1
Es ist ein vollständiges Betriebssystem (wie AIX, HP-UX, Solaris und dergleichen), in der Tat kein Kernel. Antwort aktualisiert.
Jlliagre