Frage von JanyoOoO, 99

Kann man ein qualitativ gutes Betriebssystem nur in der Java-Programmiersprache schreiben?

Hey Leute, Ich würde gerne mein eigenes OS mit eigenem Grub programmieren. Dieses soll in erster Linie wenig Ressourcen verbrauchen, sodass noch 90% der Hardware für Programme mit hohen Systemanforderungen bleiben, also auch auf jegliche Zusätze verzichten. Ich will allerdings eine grafische Benutzeroberfläche und will das ganze nicht mittels Vorlage, wie z.B. Linux etc. machen sondern komplett selber. Da ich Java sehr gut beherrsche, würde ich gerne anstatt C++ oder ähnlichem Java verwenden. Sei ihr der Meinung, dass es möglich ist, ein Betriebssystem komplett in Java-Sprache zu programmieren? Meint ihr das wäre auch gut für Einsteiger? Danke im Voraus!

Expertenantwort
von TeeTier, Community-Experte für programmieren, 22

Deine Frage ist so exorbitant unrealistisch gestellt, dass ich mir gerade nicht mal sicher bin, ob du nur rumtrollen willst.

Bei nahezu jedem einzelnen Punkt deines Textes denkt man sich eigentlich nur: "Häh? Will der uns hier veräppeln?".

Falls die Frage tatsächlich ernst gemeint sein sollte: Nein, es geht nicht. :)

Antwort
von procoder42, 36

Da ich Java sehr gut beherrsche

Und da kam dir nicht der Gedanke, dass Java Programme in der JVM laufen ?

Sei ihr der Meinung, dass es möglich ist, ein Betriebssystem komplett in Java-Sprache zu programmieren?

Das ist keine Frage von Meinungen, sondern von Fakten und nein, es geht nicht.

Meint ihr das wäre auch gut für Einsteiger?

In was ? Low Level Programmierung mit einer High Level Sprache xD ?

Dieses soll in erster Linie wenig Ressourcen verbrauchen, sodass noch
90% der Hardware für Programme mit hohen Systemanforderungen bleiben

Mach dir erst mal Gedanken über das WIE, bevor du irgendwelche Optimierungen vornehmen willst.

Ich will allerdings eine grafische Benutzeroberfläche und will das ganze
nicht mittels Vorlage, wie z.B. Linux etc. machen sondern komplett
selber.

Ach komm. Lern erst mal, was alles hinter einem Betriebssystem steckt, bevor du hier deine ganzen Anforderungen stellst. Damit eine GUI sinn macht, musst du erst mal Multithreading und Seitenadressierung ermöglichen.

Realistisch kann ich dazu nur sagen, dass du entweder erst mal eine Low Level Sprache lernen solltest und dich langsam dazu einlesen, wie ein Betriebssystem überhaupt aufgebaut ist (Das kann gut und gerne mehrere Jahre dauern) oder du wirst das Projekt wohl aufgeben müssen

Antwort
von JanyoOoO, 64

Achso und was haltet ihr von der Aussage, Java hätte auf dauer keine Zukunft?

Kommentar von MalNachgedacht ,

Ich würde sagen - auf Dauer hat keine heute existierende Programmiersprache Zukunft.
Die Informatik entwickelt sich ja zum Glück weiter und neue Konzepte werden entdeckt und irgendwann auch mal umgesetzt.

Java als Plattform ist aber schon "gewaltig" - so etwas wird nicht von heute auf morgen eingestampft und entsprechend wird wohl Java um neuere Konzepte erweitert um diese enormen Investitionen nicht abschreiben zu müssen.

Der früheren Nachteile von Java (schlechtere Performance, unnschöne Benutzeroberflächen bei Swing) haben deutlich an Bedeutung verloren.

Und die Plattformunabhängigkeit wird wohl immer wichtiger werden - und da spielt Java ganz vorne mit....

Antwort
von triopasi, 73

Das geht nicht, da Java eine VM benötigt. Ohne anderen Betriebssystem kann keine JVM also auch kein Java laufen.

Antwort
von Herb3472, 48

Wozu soll das gut sein? Ein Betriebssystem muss nach meinem Verständnis bootfähig sein. Ich glaube nicht, dass Du das mit Java zustande bringst, da Java ja auf Basis einer VM läuft.


Antwort
von FouLou, 54

Das geht meines wissens nach nicht. Da java ja auf der JVM läuft. Du hast ja nichts wo du die JVM drauf laufen lassen kannst.

Eventuell kann man da eine art minimalsystem als grundlage nehmen das nichts anderes macht als ne JVM laufen zu lassen.


Kann da leider nicht genaauer werden weil ich nicht genügend ahnung von Betriebsystem programmierung habe.

Hinzu kommt, java ist vergleichweise langsam und inperformant.

Keine passende Antwort gefunden?

Fragen Sie die Community