OS Programmierung
-
Jo, das ist schon interessant, das Thema !
Nur da ich nicht so gut Assembler kann, wäre natürlich praktisch
wenn man das in C weiterschreiben könnte.Bis jetzt bootet das nämlich nur und gibt Text aus.
-
Wie testet ihr eigentlich dieses kleine OS dann? auf nem Extra PC oder nur von ner Diskette auf eurem haupt PC?
Reicht ein 486dx2 für son kleines "OS" zum testen? Hab so einen nämlich noch rumfliegen *ggg*
-
Original erstellt von <Guest>:
**Wie testet ihr eigentlich dieses kleine OS dann? auf nem Extra PC oder nur von ner Diskette auf eurem haupt PC?Reicht ein 486dx2 für son kleines "OS" zum testen? Hab so einen nämlich noch rumfliegen *ggg***
ich habe es auf meinem normalen Rechner geteste, einfach auf Diskette geschrieben, mit diesem Programm was da angegeben wurde!
Das Ding könntest du eigentlich auch auf einem Taschenrechner booten:D Denn so eine kleine Textausgabe und ein Reboot werden wohl keine große Leistung erforden;)
-
Also generell würde ich zum OS basteln immer sowas wie bochs empfehlen, dmait man nicht immer rebooten muss für jeden test
-
was sind "bochs"??
-
Hm, scheint schon ganz in Ordnung zu sein.
Nur das Problem ist, dass es solche Tuts wie Sand am Meer gibt. Solche, die lediglich einen Bootloader beschreiben, der nen Text ausgibt und eventuell noch nen paar Sektoren lädt.
Aber sobald man Tuts für solche Sachen wie Systemaufrufe und Treiber sucht, siehts dann schon wieder eher dürftig aus. Möglichweise, weil viele erst dann merken, was sie sich vorgenommen haben, und es dann aufgeben.
-
@The Monument
Naja ich denk mal ne gute GUI ist auch recht schwer *ggg*Aber was mich intressiert: Kann man überhaupt ein OS auch per C++ coden ohne ASM?
-
Original erstellt von <Guest>:
Was sind "bochs"??bochs ist ein PC-emulator, de praktisch ermöglicht auf deinem Betriebssystem in einem Fenster einen komplett eigenen PC laufen zu lassen (siehe auch http://bochs.sourceforge.net/ )
Original erstellt von <Guest>:
Aber was mich intressiert: Kann man überhaupt ein OS auch per C++ coden ohne ASM?Ganz ohne asm kommt man nicht aus, man muss zumindest den Bootloader in asm schreiben. Und danachbenötigt man noch ein paar minimaldinge, die man aber C-Funktionen verpacken kann (z.B. sti/cli interrupts (de)aktivieren)
-
Original erstellt von TriPhoenix:
Ganz ohne asm kommt man nicht aus, man muss zumindest den Bootloader in asm schreiben. Und danachbenötigt man noch ein paar minimaldinge, die man aber C-Funktionen verpacken kann (z.B. sti/cli interrupts (de)aktivieren)also jetzt mal klartext:
Könnte man von der Stelle an jetzt in C weiterschreiben, soweit wie es jetzt ist?
Wie kann man jetzt C-Programm ausführen? In welchem Format...?
-
@BF_31
lies dir am besten mal die Tutorials durch aus der FAQ.Du brauchst einen Bootloader, der lädt dann deine Binär Datei nach, die kann natürlich mit jeder Programmiersprache geschrieben worden sein. Die Binär Datei darf nur keine Header Informationen oder so enthalten
Ich weiss nicht, was du für ein OS/Compiler für deine Entwicklung nimmst, auf jeden Fall würde ich mal die Linker Anleitung durchlesen
Wenn du den Kernel mit C Programmen erweitern willst, solltest du nicht vergessen, dass du keine Möglichkeit hast auf die C Std. Lib zuzugreifen. Also musst du schön alles neuschreiben oder eine C Std Lib auf dein OS portieren.
Ohne detailierte Kentnisse von Assembler und wie du zB. Tastatur Programmierung betreibst kommst du aber nicht rum. Lies am besten ein paar Tutorials aus der FAQ.
BTW.
für das OS an dem ich mal gearbeitet habe, habe ich mein altes 386 Laptop immer zum testen genommen. Für größere Projekte sollte man aber BOCHs nehmen.