Kennt ihr das Betriebsystem "genode"?



  • Es gibt ja dieses Problem bei Linux das Tanenbaum schon bemängelt hat: Linux ist nicht ein Microkernel (Oder so ähnlich). Ich glaube, danach hat windows so stark an popularität gewonnen, dass all die Betriebsystem-Forscher erst in eine Schockstarre gerieten und dieses thema irgendwie bis heute nicht wieder ernsthaft angetastet wurde (Oder so ähnlich).

    Jetzt habe ich genode gefunden:

    https://genode.org/download/live-cds

    Faszinierend, da kann man in der Demonstrationsversion ein Linux im Fenster starten und aus diesem wieder genode und dort lässt sich wieder Linux starten. Das ist doch ein Traum, von dem jeder ernstzunehmender Informatiker träumen müsste: Es muss doch möglich sein das Betriebsystem das man gebootet hat selbst wieder in sich selbst emuliert zu booten. Ich glaube genode kann das: cool 🙂

    (Ich bin aber noch am gucken - ist doch ein ziemlich komplexes thema)



  • Zumindest was du schreibst, ist ziemlicher Quatsch.
    Ob das Genode irgendwas interessantes ist, weiß ich nicht, bin da aber sehr skeptisch.



  • Mechanics schrieb:

    Zumindest was du schreibst, ist ziemlicher Quatsch.

    "ziemlich" bezieht sich auf welchen Anteil der Aussagen von mir?



  • "ziemlich" war keine qualitative Aussage 😉

    z.B. die beiden "oder so ähnlich" Aussagen, sind beide falsch und zeugen nicht grad von einem tieferen Verständnis der Thematik.
    Oder "Es muss doch möglich sein das Betriebsystem das man gebootet hat selbst wieder in sich selbst emuliert zu booten." Das ist jetzt doch auch nichts besonderes oder interessantes. Da gibts tausend Möglichkeiten, und technisch wird genode da auch nichts anderes machen, als die anderen. Scheint auch irgendwie an der aktuellen Container Entwicklung vorbeizugehen.



  • Die erste "(oder so ähnlich)"-aussage ist aber doch richtig? Tanenbaum bezeichnete Linux als Überholt, weil Linux nicht ein Microkernel ist.
    Zumindest wenn das obere wahr ist, ist dein "Ziemlicher Quatsch" ziemlich provokativ.

    🙂



  • Mechanics schrieb:

    " Das ist jetzt doch auch nichts besonderes oder interessantes. Da gibts tausend Möglichkeiten, und technisch wird genode da auch nichts anderes machen, als die anderen. Scheint auch irgendwie an der aktuellen Container Entwicklung vorbeizugehen.

    Naja die Microkernel sind doch so gebaut, dass z.B. treiber auch im Usermode laufen. Ich denke auch ganze Betriebsysteme können auf diese weise parallel zu einander laufen.

    "Container Entwicklung" - da gibt es ja so begriffe wie cgroups und ein paar andere, aber da werden doch nur ein paar prozesse von anderen isoliert oder? naja ich bin da noch am Forschen 🙂
    Aber so grob denke ich dass Microkernel eine viel bessere Lösung sind als monolitische.

    Die heissen ja micro weil die sehr klein sind. Also nur grundlegende funktionen haben. Das ist doch geil - man kann dann darauf aufbauen - modulares betriebsystem.

    Linux dagegen ist ein dickes ding, dass sehr kompliziert ist: weil eben alles darein kompiliert ist. Das ist doch sehr schwer zu überblicken?

    Oder so ähnlich?



  • neoexpert schrieb:

    Die erste "(oder so ähnlich)"-aussage ist aber doch richtig? Tanenbaum bezeichnete Linux als Überholt, weil Linux nicht ein Microkernel ist.

    Er hat es behauptet, aber die Geschichte zeigt, dass er damit falsch lag.

    Microkernel vs. Monolith ist ein Tradeoff zwischen Stabilität und Leistung. Niemand möchte Leistung abgeben, wenn ihm die Stabilität ausreicht. Und so schlecht ist die Stabilität des Linux-Kernels jetzt nicht.



  • Interessant dass hier Linux doch gegen die Unix-Philosophie eigentlich verstösst:

    schreibe Programme so, dass sie nur eine Aufgabe erledigen aber diese ziemlich gut.

    Naja vllt kann ja der Kernel diesem Grundsatz widersprechen.
    Aber wenn er dies nicht täte, wäre doch die Betriebsystem-Entwicklung gar nicht so kompliziert wie sie scheint?



  • neoexpert schrieb:

    Aber so grob denke ich dass Microkernel eine viel bessere Lösung sind als monolitische.

    Die heissen ja micro weil die sehr klein sind. Also nur grundlegende funktionen haben. Das ist doch geil - man kann dann darauf aufbauen - modulares betriebsystem.

    Linux dagegen ist ein dickes ding, dass sehr kompliziert ist: weil eben alles darein kompiliert ist. Das ist doch sehr schwer zu überblicken?

    Oder so ähnlich?

    Siehe Antwort von Tobiking. Mittlerweile ist die Meinung von Tanenbaum auch ziemlich überholt. Man könnte da zumindest noch drüber streiten, aber ich würde zumindest auf keinen Fall behaupten, dass Linux "dieses Problem hat". Linux existiert erstmal völlig unabhängig von diesen theoretischen Diskussionen, und wenn du behauptest, das hätte irgendwelche Probleme, musst du das schon sehr viel konkreter begründen.

    Auch irgendwelche Behauptungen, irgendetwas wäre geil, bringt keinen weiter. Auch Linux ist sehr modular aufgebaut. Ob das in einem Prozess läuft oder in mehreren, merkst du als Entwickler erstmal überhaupt nicht. Da wäre nichts einfacher zu programmieren, nur wenn man das in mehrere Prozesse aufteilen würde. Im Gegenteil, das wäre vermutlich komplizierter, siehe z.B. Micro Services. Und da die jetzige Lösung gut und stabil genug ist, hätten Micro Kernel nur irrelevante theoretische Vorteile zu bieten, bei vielen Nachteilen.

    Das ist jetzt auch etwas übertrieben formuliert. Ich bin auch kein OS Entwickler (habe mich damit aber etwas beschäftigt und auch Kernel Modulle programmiert) und dementsprechend auf kein Experte auf dem Gebiet. Ich wollte damit nur sagenn, dass irgendwelche plumpen Aussagen wie "geil weil modular" ohne tieferes Verständnis völlig sinnlos sind.