Eine wichtige Sache, die zu beachten ist, bevor wir beginnen, ist, dass Microsoft die einzige Quelle für das Windows-Betriebssystem ist und "Microsoft Windows" möglicherweise als ein einziges Produkt angesehen wird, aber technisch gesehen besteht es aus mehreren Softwareschichten, die für den Benutzer transparent zusammenarbeiten Perspektive. In der Linux-Welt stehen jedoch für jede dieser Schichten mehrere Softwarepakete zur Verfügung. Diese Auswahlmöglichkeiten machen es einem ungewohnten Benutzer leicht, mit den Begriffen verwechselt zu werden.
Ich werde versuchen, die verschiedenen Ebenen weiter unten zu erläutern.
1. Ebene - Befehlszeilenschnittstelle / Kernel
Um den mehrschichtigen Aspekt von Linux zu verstehen und ihn in einfachen Windows-ähnlichen Begriffen zu beschreiben, tun wir so, als wären wir in den Tagen von Windows 95 zurück.
In dieser Analogie ähnelt das Betriebssystem "Linux" DOS, bei dem alles über eine Befehlszeilenschnittstelle (kurz "CLI") ausgeführt wird. Tatsächlich ist bei den meisten Serverinstallationen von Linux eine CLI die einzige Möglichkeit, auf den Computer zuzugreifen. Nach dem Start von Linux bleibt es je nach Konfiguration entweder im Befehlszeilenmodus oder startet automatisch eine grafische Benutzeroberfläche (abgekürzt "GUI"). Auf einigen Computern, die im CLI-Modus verbleiben, kann ein Benutzer, der sich bei der CLI anmeldet, eine GUI manuell starten.
2. Ebene - Grafische Benutzeroberfläche
Oben auf der Befehlszeilenschnittstelle befindet sich die GUI. Moderne Linux-Systeme verwenden in der Regel einen X-Server , der im Wesentlichen genau wie der Windows-Desktop ist - stellen Sie sich ihn als leere Leinwand vor.
Diese Ebene verwaltet die Hardware-Ebene der grafischen Benutzeroberfläche, verwaltet die Eingaben über Tastatur, Maus usw. und die Ausgabe an Monitore usw. Grundsätzlich wird festgelegt, wie die Dinge auf dem Bildschirm dargestellt werden. Was auf dem Bildschirm gezeichnet wird, wird von einem Fenstermanager gesteuert.
3. Ebene - Fenstermanager
Auf dem X-Fenstersystem sitzt ein Fenstermanager. Es ist für das Zeichnen jeder Anwendung auf der "Zeichenfläche" verantwortlich und fügt allgemeine Fensterelemente wie Rahmen, die Titelleiste und die Schaltflächen zum Minimieren / Maximieren des Fensters hinzu. Das Wechseln zwischen Fenstermanagern kann mit dem Wechseln zwischen "Klassischem Modus" und "Aero-Modus" in Windows verglichen werden: Der Rahmen des Fensters ändert sich, während der Inhalt des Fensters gleich bleibt.
Die bekanntesten Fenstermanager in der Linux-Welt sind KDE und Gnome, und in der Regel konzentriert sich eine Linux-Distribution auf einen Fenstermanager als primäre Schnittstelle. Im Allgemeinen können Sie jedoch jeden Fenstermanager auf jeder Distribution installieren und problemlos ausführen.
Letztendlich ist es eine Frage der Wahl, welche Plattform Sie verwenden möchten. Jedes stellt eine große Anzahl von Anwendungen bereit, die unter Verwendung ihres Frameworks unter ihnen ausgeführt werden. Es ist auch wichtig zu wissen, dass mehrere Fenstermanager gleichzeitig ausgeführt werden können (Enlightenment kann unter Gnome usw. verwendet werden), dies ist jedoch normalerweise nicht für normale Benutzer erforderlich.
In Bezug auf Gnome und KDE sind diese beiden Projekte viel größer geworden als nur Fenstermanager. Dazu gehören unter anderem auch Entwicklungsframeworks zum Erstellen von Anwendungen. Das KDE-Framework heißt Qt und das Gnome-Framework heißt GTK. Den gesamten Umfang dieser beiden Projekte in diesem Beitrag anzugeben, wäre eine Informationsüberflutung.
Um das Problem für normale Benutzer zu verwechseln, sind die KDE- und Gnome-Frameworks jetzt auch für die Verwendung auf der MS Windows-Plattform verfügbar, die normalerweise von Anwendungen verwendet wird, die versuchen, auf mehreren Plattformen verwendet zu werden (wie dem IM-Client Pidgin ). In den meisten Fällen wird jedoch ein Linux-Desktop beschrieben, wenn Sie Hinweise auf Gnome oder KDE sehen.
Vielen Dank an Phoshi, auf dessen Antwort ich aufgebaut habe.