
Ich wollte lernen, wie man ein Betriebssystem von Grund auf erstellt, und habe diese Anleitung gefunden:http://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf.
Auf Seite 4 wird erklärt, wie man einen einfachen Bootsektor erstellt, und auf Seite 6, wie man mit Bochs eine CPU emuliert, die davon bootet. Ich habe das ausprobiert und alles hat gut funktioniert.
Jetzt möchte ich dasselbe auf einem echten PC oder mit einer virtuellen Maschinensoftware wie VirtualBox versuchen. Ich dachte, ich könnte eine bootfähige CD mit meinem Bootsektor darauf erstellen, aber bisher ist mir das nicht gelungen. Ich habe versucht, ein ISO-Image einer CD mit meinem Bootsektor zu erstellen, aber wie erwartet erhalte ich dabei einen Fehler (VirtualBox zeigt den Fehler „FATAL: Kein bootfähiges Medium gefunden! System angehalten.“ an).
Was muss ich tun, um eine bootfähige CD mit meinem Bootsektor korrekt zu erstellen? Vielen Dank im Voraus.
Antwort1
Schau mal:http://wiki.osdev.org/El-Torito
Writing an El-Torito Boot Sector
At the start of your El-Torito boot sector, you simply need to set segment registers to known values (as usual) and use the BIOS to load files from the CD as per ISO 9660. As with a normal floppy or hard disk, DL contains the BIOS drive number.
Using Mkisofs, you can write your boot sector to a CD image (.iso) as follows:
mkisofs -R -b path/to/loader.sys -no-emul-boot -boot-load-size 4 -o [IsoFile.iso] [IsoDirectory]
Verwenden Sie einfach Ihre selbstgeschriebenen Loader.sys und Mkisofs (http://wiki.osdev.org/Mkisofs).