Wie kann ich einen Bildschirm leeren in C++
-
Was heißt hier kein "großes" OS? Ein OS entwickelt man nicht einfach so. Auch ein vergleichsweise kleines OS zu entwickeln ist ein riesen Projekt. Hier gibt es Informationen zur OS-Entwicklung:
http://henkessoft.de/OS_Dev/OS_Dev1.htm
Schau dir mal an, wie dort Ausgaben, etc. gemacht werden. Nicht mit befehlen wie z.B. cout oder print, sondern durch direktes schreiben in den Videospeicher. Nicht für ungut, aber ich glaube, dass du erst einmal die Grundlagen von C++ und auch (ein wenig) Assembler, bevor du dich an die Entwicklung eines OS herantastest. Auch solltest du dir ansehen, wie der Computer überhaupt funktioniert. Hier gibt es noch in tolles Simulationsprogramm:
http://gymnasium-kreuztal.dyndns.org/pub/bscw.cgi/108059
MfG, Jochen
-
Wäre eine Möglichkeit, aber da musst du die Sprache auch zuerst können. Dort wirst du ebenfalls die Standardbefehle nicht nutzen können.
-
Jochen S. schrieb:
Was heißt hier kein "großes" OS? Ein OS entwickelt man nicht einfach so. Auch ein vergleichsweise kleines OS zu entwickeln ist ein riesen Projekt. Hier gibt es Informationen zur OS-Entwicklung:
http://henkessoft.de/OS_Dev/OS_Dev1.htm
Schau dir mal an, wie dort Ausgaben, etc. gemacht werden. Nicht mit befehlen wie z.B. cout oder print, sondern durch direktes schreiben in den Videospeicher. Nicht für ungut, aber ich glaube, dass du erst einmal die Grundlagen von C++ und auch (ein wenig) Assembler, bevor du dich an die Entwicklung eines OS herantastest. Auch solltest du dir ansehen, wie der Computer überhaupt funktioniert. Hier gibt es noch in tolles Simulationsprogramm:
http://gymnasium-kreuztal.dyndns.org/pub/bscw.cgi/108059
MfG, Jochen
Also, ich kann die Grundlagen von C++ aber ich verstehe von Assembler NUR Bahnhof!
-
Jede Sprache, die nativ kompiliert und zu der du Objectfiles linken kannst, ist möglich.
-
Icematix schrieb:
Jede Sprache, die nativ kompiliert und zu der du Objectfiles linken kannst, ist möglich.
Ja, da haste Recht! Bill Gates hat ja auch Biblotheken Benutzt und was kam raus:
Ein OS! Und es lief noch!

-
sebastianfox schrieb:
Jochen S. schrieb:
Was heißt hier kein "großes" OS? Ein OS entwickelt man nicht einfach so. Auch ein vergleichsweise kleines OS zu entwickeln ist ein riesen Projekt. Hier gibt es Informationen zur OS-Entwicklung:
http://henkessoft.de/OS_Dev/OS_Dev1.htm
Schau dir mal an, wie dort Ausgaben, etc. gemacht werden. Nicht mit befehlen wie z.B. cout oder print, sondern durch direktes schreiben in den Videospeicher. Nicht für ungut, aber ich glaube, dass du erst einmal die Grundlagen von C++ und auch (ein wenig) Assembler, bevor du dich an die Entwicklung eines OS herantastest. Auch solltest du dir ansehen, wie der Computer überhaupt funktioniert. Hier gibt es noch in tolles Simulationsprogramm:
http://gymnasium-kreuztal.dyndns.org/pub/bscw.cgi/108059
MfG, Jochen
Also, ich kann die Grundlagen von C++ aber ich verstehe von Assembler NUR Bahnhof!
Dann hast du dir schlichtweg das falsche Projekt ausgesucht. Eigne dir erstmal das nötige Grundwissen an, welches du ganz offensichtlich nicht hast.
Übrigens: Um den Bildschirm zu leeren brauchst du nicht einmal Assembler.
-
Ich glaube, dass wir unter dem Begriff "Grundkenntnisse" ganz verschiedene Dinge meinen. Mein Buch, dass die Sprache C++ lehrt, ist rund 1200 Seiten dick. Dass du keine ausreichenden Kenntnisse besitzt, zeigen die Fragen, welche du in diesem Forum stellst.
-
sebastianfox schrieb:
Bill Gates hat ja auch Biblotheken Benutzt und was kam raus:
Ein OS! Und es lief noch!

Edit: Diese "Bibliotheken" machen aber nichts plattformspezifisches.
Nicht ganz. Das erste Betriebssystem für den IBM-PC war nicht von ihm, er hast es nur gekauft. Der Quelltext von QDOS bestand aus rund 4000 Zeilen Assemblercode.
-
Jochen S. schrieb:
sebastianfox schrieb:
Bill Gates hat ja auch Biblotheken Benutzt und was kam raus:
Ein OS! Und es lief noch!

Nicht ganz. Das erste Betriebssystem für den IBM-PC war nicht von ihm, er hast es nur gekauft. Der Quelltext von QDOS bestand aus rund 4000 Zeilen Assemblercode.
Ich meine Windows 1. Es ist auf C geshcrieben.
-
Ja, C an sich ist sozusagen plattformunabhängig, solange man keine Plattformspezifischen Dinge macht. Wie man den Videospeicher in C/C++ beschreibt/leert wurde hier ja schon beschrieben.
-
Windows 1 war übrigens nur eine Oberfläche für DOS, also das was ich dir im Post hier drüber vorgeschlagen habe, nur grafisch etwas ausgefeilter. Windows 1 (und alles bis inklusive Windows 3*) konnte man nur benutzen, wenn im Hintergrund DOS als Betriebssytem lief.
*: Spötter sagen, dass dies sogar bis Windows ME der Fall war
-
Projektvorschlag: Entwickele kein eigenes Betriebssystem, sondern bloß eine Oberfläche für die Konsole, sprich: Deine eigene Konsole die in der Konsole läuft. Das ist immer noch schwer genug, aber für deinen Kenntnisstand nicht völlig unmöglich. Und du kannst guten Gewissens alles benutzen, das in deinem Buch steht.
P.S.: Bill Gates hat in seinem ersten DOS garantiert keine Bibliotheken benutzt, sondern das so ähnlich wie in dem Link von Jochen S. alles selbst programmiert. Soweit ich weiß, in Assembler, aber die Wahl der Sprache ist für Betriebssysteme ziemlich egal, außer dass sie nativ compilierbar sein müssen. In der Praxis sind die gängigen Betriebssysteme in C geschrieben, aber es spricht nichts prinzipielles gegen C++ (obwohl das Betriebssystementwickler anders sehen
)
-
SeppJ schrieb:
Projektvorschlag: Entwickele kein eigenes Betriebssystem, sondern bloß eine Oberfläche für die Konsole, sprich: Deine eigene Konsole die in der Konsole läuft. Das ist immer noch schwer genug, aber für deinen Kenntnisstand nicht völlig unmöglich. Und du kannst guten Gewissens alles benutzen, das in deinem Buch steht.
P.S.: Bill Gates hat in seinem ersten DOS garantiert keine Bibliotheken benutzt, sondern das so ähnlich wie in dem Link von Jochen S. alles selbst programmiert. Soweit ich weiß, in Assembler, aber die Wahl der Sprache ist für Betriebssysteme ziemlich egal, außer dass sie nativ compilierbar sein müssen. In der Praxis sind die gängigen Betriebssysteme in C geschrieben, aber es spricht nichts prinzipielles gegen C++ (obwohl das Betriebssystementwickler anders sehen
)Ja, aber Windows CE ist auf C++ gschrieben!
http://en.wikipedia.org/wiki/Windows_CE
-
SeppJ schrieb:
Das ist immer noch schwer genug, aber für deinen Kenntnisstand nicht völlig unmöglich.
So wie er sich hier verhält ist selbst ein fehlerfreies C++ "Hello World"-Programm für ihn unmöglich.
-
Janjan schrieb:
SeppJ schrieb:
Das ist immer noch schwer genug, aber für deinen Kenntnisstand nicht völlig unmöglich.
So wie er sich hier verhält ist selbst ein fehlerfreies C++ "Hello World"-Programm für ihn unmöglich.
DU KLEINER MIESER...................
100 Pro kann ich ein Hello World Programm fehlerfrei schreiben!
-
Ich habs!:
Ich ändere einfach etwas in der Headerdatei cstdlib! So, dass irgendwie der Computer cls irgendwie akzeptiert(mit Computer meine ich nicht Windows)
-
sebastianfox schrieb:
Janjan schrieb:
SeppJ schrieb:
Das ist immer noch schwer genug, aber für deinen Kenntnisstand nicht völlig unmöglich.
So wie er sich hier verhält ist selbst ein fehlerfreies C++ "Hello World"-Programm für ihn unmöglich.
DU KLEINER MIESER...................
100 Pro kann ich ein Hello World Programm fehlerfrei schreiben!Dann tu es. Jetzt sofort, aus dem Handgelenk.
sebastianfox schrieb:
Ich habs!:
Ich ändere einfach etwas in der Headerdatei cstdlib! So, dass irgendwie der Computer cls irgendwie akzeptiert(mit Computer meine ich nicht Windows)
Wird dir nichts bringen.
-
Aus den Handgelenkt...Denskt du wirklich im Enst, das sich dich per Computer schlagen kann? Um dir es zu beweisen, schreibe ich ein Hallo Welt Programm:
#include <iostream> using namespace std; int main() { cout << "Hallo Welt" << endl; return 0; }
-
sebastianfox schrieb:
DU KLEINER MIESER...................

Ich frage mich, wann ein Moderator diesen Thread entdeckt un schließt

Janjan hat ein wenig übertrieben, das ist ein rhetorisches Mittel.
@sebastianfox: Ändere nichts an den Headerdateien, das geht nur ins Auge und dein Vorhaben wird auf diesem Wege sowiso nicht realisierbar sein.
-
sebastianfox, mach bitte den Thread nicht noch lächerlicher. Zuerst mit deinem Kenntnisstand ein OS programmieren wollen, in den Posts unnötig viele Satzzeichen und Smileys verwenden und sich dann so leicht auf eine Provokation einlassen... Wenn du ernst genommen werden willst, musst du das anders angehen. Merks dir einfach fürs nächste Mal.