Wenn ich das richtig verstehe, ist der Linux-Kernel unter der GPL lizenziert. Wenn also jemand darauf basiert, muss er auch die gesamte abgeleitete Arbeit unter der GPL lizenzieren, sodass jeder seine abgeleitete Arbeit ändern und / oder weitergeben kann.
Beispielsweise basieren alle Android-Versionen auf dem LK. Bedeutet das nicht, dass die gesamte Version und alle ihre Komponenten auch unter der GPL veröffentlicht werden müssen?
Beispielsweise werden die meisten Android-Versionen mit proprietären Komponenten geliefert. Verstößt das nicht gegen die GPL? Muss nicht die gesamte abgeleitete Arbeit unter der GPL veröffentlicht werden?
Mit Ubuntu müssen Sie beispielsweise nach der Installation MPEG-Codecs herunterladen. Ich gehe davon aus, dass dies daran liegt, dass MPEG proprietär ist und die MPEG-Lizenz daher nicht mit der GPL kompatibel ist, sodass sie nicht in derselben Version enthalten sein können.
Wie umgehen Android-Versionen dies?
Antworten:
Zunächst müssen Sie sich darüber im Klaren sein, dass Googles Android-Code und der Linux-Kernel-Code getrennt sind. Android selbst ist unter der zulässigen Apache-Lizenz 2.0 lizenziert, und in Wikipedia -Worten:
Daher werden normalerweise keine Android-Änderungen der Anbieter zur Verfügung gestellt.
Zweitens wird im Fall eines Linux-Kernels, der unter GPLv2 lizenziert ist, der Code für die Öffentlichkeit freigegeben, entweder irgendwo im Gerät vergraben (weniger wahrscheinlich) oder auf einer unbekannten Seite auf der Website des Anbieters zum Herunterladen für Open-Source-Codes in verfügbar ihre Produkte.
Der öffentlich verfügbare Linux-Kernel-Code weist jedoch eine große Einschränkung auf: proprietäre Treiber und Kernel-Module mit ähnlichen Funktionen. Der Linux-Kernel kann binäre Blobs laden, die unter einer proprietären Lizenz verteilt werden, und der Quellcode solcher Blobs, die zum Ausführen Ihres Geräts erforderlich sind, wird natürlich nicht verteilt. Fazit: Selbst wenn Sie es schaffen, die für Ihr Gerät spezifische Kernelquelle in den Griff zu bekommen, können Sie sie nicht unbedingt zum Kompilieren Ihres eigenen funktionierenden Linux-basierten Betriebssystems verwenden.
Zulässig im Kontext
Was genau verstehen wir unter einer zulässigen Lizenz ? Aus Ihren Kommentaren geht hervor, dass Sie die Fähigkeit verstanden haben, andere zulässige oder proprietär lizenzierte Software auszuführen. Das ist aber falsch
Zulässig bedeutet in diesem Zusammenhang, wie zulässig es ist, Sie mit dem Quellcode tun zu lassen, was Sie wollen.
GPL ist nicht zulässig in dem Sinne, dass Sie gesetzlich verpflichtet sind , Änderungen an einem GPL-lizenzierten Code zu veröffentlichen. Es erlaubt Ihnen nicht, den Beitrag aller zu nehmen, Änderungen daran vorzunehmen (unabhängig davon, ob Sie ihn verbessern oder verschlechtern) und ihn zu verstecken. Wenn Sie die Binärdatei verteilen möchten, müssen Sie auch den Quellcode verteilen. Da es sich nicht Sie private Änderungen erlauben, ist es daher nicht permissive .
Die Apache-Lizenz und die BSD-Lizenzen sind Beispiele für zulässige Lizenzen. Im Gegensatz zu einer streng nicht zulässigen GPL können Sie Änderungen an den unter ihnen lizenzierten Codes vornehmen und diese für sich behalten, mit anderen Worten, sie sind zulässig . Das heißt, Sie können den Android-Code übernehmen. Selbst wenn Sie ihn so weit ändern, dass er nicht mehr wiederzuerkennen ist, können Sie ihn selbst behalten. Und genau das tun Android-Gerätehersteller.
quelle