Frage von ChetFaker97, 59

Ist die GUI eines Betriebssystems im Kernel enthalten?

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von Roderic, 25

Nein. Der Kernel enthält nur den Systemkern eines Betriebsystems:

Den HAL (hardware abstraction layer),
das Speicher- und Prozessmanagement und
Teile der Geräteverwaltung und der Dateisystemverwaltung.

Das Grafische Benutzer Interface ist nur ein ganz normales Programm wie alle anderen Programme auch und läuft im User Mode.

Kommentar von TeeTier ,

Naja, außer GDI-Teile bei Windows. Aber der Fairness halber muss ich leider sagen, dass auch bei Linux viele Dinge im Kernel rumlungern, die da eindeutig nicht hingehören (Z. B. ein Parser für TrueType-Fonts oder HTTP-Header ... was zum Teufel hat das im Kernel zu suchen??? Beide Parser waren bisher schon mehrmals für Sicherheitslöcher verantwortlich.)

Ansonsten haste natürlich Recht. :)

Antwort
von TeeTier, 13

Normalerweise nicht. Sollte man auch tunlichst vermeiden, allein schon wegen der Fehleranfälligkeit und den daraus resultierenden Sicherheitslücken.

Deshalb macht das auch kein Betriebssystem so ... bis auf ... ja, bis auf Windows.

Du hast richtig gelesen, bei Windows steckt der GDI-Code im Kernel. Das ist vermutlich eine der dümmsten Designentscheidungen, die bei MS jemals getroffen wurden, und die wird seit den 80ern bis heute durchgeschleift.

Wenn du heute mit C# und WPF tolle Fenster bastelst, bemerkst du davon zwar überhaupt nichts, aber im Großen und Ganzen sind das sowieso alles nur Wrapper, die irgendwie auf das Kernel-GDI zugreifen.

Fazit: GUI-Code gehört definitiv NICHT in den Kernel, und außer Windows ist mir auch kein OS bekannt, welches diesen Fehler begeht. :)

Kommentar von TeeTier ,

PS: Wie ich im Kommentar auf Roderics Antwort auch geschrieben habe, stecken auch im Linux-Kernel einige Parser, deren Platzierung man dort bestenfalls als "naiv" bezeichnen könnte. Also soooo alleine steht Windows dann doch nicht da. Leider. ><

Kommentar von Roderic ,

Naja: Zu Microsofts Verteidigung sei gesagt, daß der Kernel von Windows ein Kompromiss ist zwischen

  • Mikrokernel (sicher aber schnarchlangsam) und
  • monolithischem Kernel (schnell aber mit Sicherheitsrisiken).

Darum nennt man ihn auch einen Hybridkernel.

Ansonsten haste natürlich recht. :)

Antwort
von ceevee, 41

Nein. Die GUI ist auch kein essentieller Bestandteil, um ein Betriebssystem am laufen zu halten. DOS z.B. hat keine GUI und auf Webservern installiert man absichtlich etwa ein Linux-System ohne GUI, weil man die GUI nicht braucht und sie nur eine potentielle Sicherheitslücke darstellt.

Antwort
von wotan38, 2

Mit den bisher eingegangenen Antworten wurde die Frage hinreichend gut beantwortet. Der noch offene Teilaspekt ist, warum das so ist. Bisher haben Pragmatiger mit offensichtlicher Ordnungsliebe (wozu ich mich auch zähle) sich geäußert. Zwar ist das, wie vorhandene chaotische Beispiele zeigen, keine zwingend notwendige Strategie für die Realisierung eines Betriebssystems. Jedoch sind Vorteile wie Überschaubarkeit und Funktionalität klar zu erkennen, wenn komplexe Zusammenhänge nach einem Ordnungsschema durchdacht sind.

Der Kernel ist ein Grundbaustein für die elementaren Funktionen eines Systems. Welche man nun als elementar einordnet, sollte nicht von philosophischen Betrachtungen abhängen. Ein Beispiel für eine pragmatische Vorgehensweise ist UNIX mit seinen Nachfolgederivaten.

Ich habe noch selbst in den 60-ger Jahren am ersten Betriebssystem (damals noch Organisationsprogramm genannt) eines Großrechners mitgewirkt. Das hatte überhaupt keinen ausgewiesenen Kernel. Die paar Funktionen, und immerhin Multitasking von max. 9 Programmen, ließen sich noch ohne Baukastendenkweise realisieren. Der weitere Verlauf der Entwicklung wurde sowohl von vorausschauenden Denkern als auch opportunen Chaoten
geprägt.

Antwort
von unpolished, 39

Nein ist sie nicht. Der Kernel ist ja die Basis und somit die Verbindung zwischen Hardware und Software auf die dann alles andere aufbaut. 

Keine passende Antwort gefunden?

Fragen Sie die Community