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

1633
brouwer89

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

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

Теперь я хочу попробовать то же самое на реальном ПК или на программном обеспечении виртуальной машины, такой как VirtualBox. Я думал, что смогу создать загрузочный компакт-диск с загрузочным сектором, но до сих пор у меня ничего не получалось. Я попытался создать ISO-образ компакт-диска, содержащего мой загрузочный сектор, но, как и ожидалось, при этом я получаю сообщение об ошибке (VirtualBox показывает ошибку «FATAL: загрузочный носитель не найден! Система остановлена».).

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

1

1 ответ на вопрос

0
duDE

Посмотрите: 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 ).

Спасибо. Это именно то, что я искал. Также сайт, на который вы ссылаетесь, очень полезен. brouwer89 10 лет назад 0
Пожалуйста, я был очень рад помочь :) duDE 10 лет назад 0