C- Kernel macht keine Ausgabe
-
Hi,
bin neu hier. Ich mache gerade das Tutorial von der Webseite http://www.henkessoft.de/OS_Dev/OS_Dev1.htm durch und habe ein Problem mit dem C- Kernel. Der C- Kernel wird zwar gestartet und durchgegangen, macht aber keine Ausgabe. Der Bildschirm wird zwar gelöscht und der Cursor erscheint, es erscheint aber keine Ausgabe, wenn ich in den Protected Mode gehe. Ich programmiere unter Ubuntu 10.04 und lasse das System unter den Emulator QEMU laufen. Ich kompeliere die Dateien so:nasm boot.asm -f bin -o boot.bin
nasm kernel.asm -f aout -o kernel.o
gcc -c ckernel.c -o ckernel.o
ld -T kernel.ld kernel.o ckernel.o
cp a.out a.bin
cat boot.bin a.bin > OS.imgDie Dateien übernehme ich eigentlich 1:1 von der Website. Ich hoffe ihr könnt mir helfen, ich hänge nähmlich schon seit über einer Woche an dem Problem.
-
Probiere auch mal andere Emulatoren wie bochs, vmware oder VirtualBox. Bei bochs hast Du einen debugger.
-
Erst einmal danke für deine schnelle Antwort und entschuldige das ich nicht früher zurückgeschrieben habe. Ich habe mal andere Emulatoren ausprobiert. Bochs und VMWare ging bei mir nicht und VirtualBox gab immer eine Fehlermeldung aus wenn ich die Image- Datei öffnen wollte. hast du vielleicht andere Ideen. Ich hoffe du kannst mir helfen.
-
VirtualBox gab immer eine Fehlermeldung aus
Welche genau?
Du solltest mindestens zwei VM zum Laufen bekommen.
-
Entschuldige das ich mich erst jetzt melde. Bei mir privat hat sich einiges getan. ich hatte jetzt mal nichts getan . Ist zwar schade, aber ich muss meinen Schweinehund dazu besiegen. Die Systeme sollten aber schon unter mehreren VM laufen. ich habe ein Image geschafft, das der startet, unter VirtualBox. alle anderen laufen unter Qemu prima. bis auf die ausgabe. die main startet damit und es kann nicht daran liegen das ich main statt _main in der ASM datei schreibe. ich schreibe nur main weil mir der LD beim zusammenlinken eine Fehlermeldung ausgibt. und VirtualBox gibt halt eine Meldung das die OS.img nicht geöffnet werden kann . Ich werde mich dann woll auf NASM beschränken müssen. Finde ich zwar schade aber was sollst. lern ich eben eine neue Sprache. könntest du mir denn bitte einmal den kompletten nasm Kernel geben oder irgendwelche Ausgabe und eingabe funktion. Ich möchte also praktisch einen Kernel der erst in den RM geht und später in den PM. Dafür wäre ich dir sehr dankbar.
-
Da jetzt anscheinend keine Antwort mehr kommt, schliesse ich jetzt diesen Thread.
ich hab dann einfach ganz vorne am kernel ein jmp .pm eingegeben, damit mein os gleich in den PM geht.