Создание загрузочного CD с пользовательским загрузочным сектором

Создание загрузочного CD с пользовательским загрузочным сектором

Мне было интересно узнать, как создать операционную систему с нуля, и я нашел это руководство:http://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf.

На странице 4 объясняется, как создать простой загрузочный сектор, а на странице 6 — как эмулировать загрузку ЦП с него, используя Bochs. Я пробовал это, и все работало отлично.

Теперь я хочу попробовать то же самое на реальном ПК или на программном обеспечении виртуальной машины, таком как VirtualBox. Я думал, что смогу создать загрузочный CD с моим загрузочным сектором на нем, но до сих пор мне это не удавалось. Я попытался создать образ ISO CD, содержащий мой загрузочный сектор, но, как и ожидалось, при выполнении этого я получаю ошибку (VirtualBox показывает ошибку "FATAL: No bootable media found! System halted.").

Что мне нужно сделать, чтобы правильно создать загрузочный CD с моим загрузочным сектором на нем? Заранее спасибо.

решение1

Взглянем: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]

Просто используйте самостоятельно написанные Loader.sys и Mkisofs (http://wiki.osdev.org/Mkisofs).

Связанный контент