
Nehmen wir an, ich möchte eine Linux-Version erstellen, die auf einer WDC 65C02-CPU läuft. Wie wird Linux „definiert“? Welche Kriterien müssen erfüllt sein, damit ein Betriebssystem als Linux und nicht nur als „irgendein anderes Homebrew-Betriebssystem“ gilt? Ich habe vor, dies direkt in Assembler zu schreiben, da ich den von cc65 generierten Code als etwas ineffizient empfinde.
Antwort1
"Linux" ist das Markenzeichen vonein bestimmtes Produkt(ein Betriebssystemkernel), kein Standard oder eine Spezifikation. Anders als beispielsweise bei „UNIX“ gibt es kein Verfahren, um ein Betriebssystem als „Linux“ zu zertifizieren, selbst wenn es 100 % Kompatibilität damit erreicht.
Mit anderen Worten, ein von Grund auf neu geschriebener Betriebssystemkernel wäre per Definition nicht Linux (genauso wie ReactOS nicht Windows ist, obwohl es ein Windows-kompatibles Betriebssystem ist), obwohl ein Betriebssystemkernel mit klarer Abstammung vom "Hauptleitung" Der Linux-Quellcode kann bis zu einem gewissen Grad immer noch Linux genannt werden. Der ELKS-Kernel für die 8086-CPU war ursprünglich ein Fork von Linux, wich jedoch sehr schnell davon ab, so dass er sich nur noch als „Linux-ähnlicher“ Kernel bezeichnet.
Ein Betriebssystem gilt als „Linux-Distribution“, wenn es den Linux-Kernel verwendet. Android könnte man als Linux-Distribution bezeichnen (obwohl das etwas weit hergeholt ist), weil es immer noch auf dem Linux-Kernel läuft, während Debian/kFreeBSD oder Debian GNU/Hurd keine Linux-Distributionen sind, weil sie den Linux-Kernel nicht enthalten (obwohl sie alles andere enthalten, was Debian Linux hat).