Eigenes Betriebssystem programmieren?

7 Antworten

Du wirst an ASM nicht vorbeikommen, da C/++ keien primitive für die Anteuerung von Hardware hat. Aber da Toolchains für C/++ in der Regel inline-ASM bewerkstelligen können, kannst Du tatsächlich sogar ein OS in C++ entwickeln.

Davon ab, gibt es mit FreeDOS ein quelloffenes DOS, auf dessen Basis man arbeiten könnte.

Wenn Du wirklich bei 0 anfangen möchtest, wird es ein wenig haarig werden, denn DU brauchst auch eien 16-Bit Toolchain - Und sei es für den Loader/MBR/Bootcode.

----------

Vor allem aber solltest Du für so ein Projekt intime Kenntnisse von Hardware, ISA und Co haben.

Übrigens hat auch MS den Originalquellcode von frühen MS-DOS Versionen veröffentlicht.


Wenn ich mich richtig erinnere, gibt es Free Dos und davon den Quellcode.

https://www.freedos.org/source/

Vielleicht erstmal hier hineinschauen.

Hallo,

das Anliegen ist sicher löblich, bei dem Mangel an Betriebssystemen, die nicht funktionieren.

Und genau da staune ich. Hier, in einem Allerweltsforum mit allen Themen die es gibt - eine solch spezielle Frage....

Da Du offenbar nichts davon verstehst lies mal diesen Beitrag:

https://de.wikipedia.org/wiki/Geschichte_von_Linux

Ich will Dich nicht abhalten aber darauf hinweisen, wenn es etwas umwerfend Neues sein soll, dann garantiert nicht mit Hilfe von GF, sondern mit

soliden Programmierkenntnissen!

Grüße aus Leipzig


Palladin007  07.04.2022, 02:06

Dein Link ist kaputt :)

Und die Frage kommt gar nicht so selten, vor drei Tagen hat jemand die exakt gleiche Frage gestellt, nur nicht so ausführlich.

0
AlterLeipziger  07.04.2022, 13:49
@Palladin007

Bei mir funktioniert der Link, kann man aber auch so finden in Wikipedia unter

Geschichte_von_Linux

1
Palladin007  07.04.2022, 20:40
@AlterLeipziger

Dass ich es kopieren und einfügen kann, weiß ich, dennoch erkennt Gutefrage.net es nicht als Link - das wollte ich damit ausdrücken

0

Wie entwickle ich ein Betriebssystem? (Computer, Technik, Programmieren) - gutefrage

Würde auch c++ anstatt nur c gehen? Ich kann bereits C# und Java somit währe der Umstiegt auf C++, glaub ich, einfacher.

Sorry, aber wer so eine Frage stellt, kann nicht sehr viel Erfahrung haben, also ist das Wort "können" bei C# und Java vermutlich um einiges zu hoch gegriffen ;)
Beide Sprachen sind weit weit komplexer, als nur Syntax und ein paar Grundlagen, C# noch ein gutes Stück mehr als Java. Wer wirklich behaupten kann, eine der beiden Sprachen zu "können", der hat deutlich mehr Erfahrung und kann allein deshalb etwas besser einschätzen, was es bedeutet, ein Betriebssystem zu entwickeln.

Und nein, der Umstieg auf C++ ist nicht einfach(er), nur weil Du C# oder Java "kannst". Die Syntax mag ähnlich sein - das war's dann aber auch. C++ ist sehr komplex und kompliziert und arbeitet auf allen Ebenen vollständig anders als C# oder Java.

Aber dennoch wirst Du für dein Vorhaben nicht um C und C++ herum kommen und höchstwahrscheinlich auch nicht um Assembler und sehr tiefgehende Hardware Kenntnisse.