Как сделать загрузочный iso (не компакт-диск или флешку) для тестируете свой собственный загрузчик?

я пытаюсь написать загрузчик (hello world sort). Я использую Bochs для моделирования (платформа Linux-Ubuntu). Но я не могу создать загрузочную iso для своего двоичного файла файл. Хотя в учебнике используется VFD (виртуальная дискета), но он предназначен для платформы Windows. Вот мой код для загрузчика (только для тестирования)

;*********************************************
;    Boot1.asm
;        - A Simple Bootloader for testing if cd is booting or not
;
;    Operating Systems Development Tutorial
;*********************************************

[BITS 16]    ;tell the assembler that its a 16 bit code
[ORG 0x7C00]    ;Origin, tell the assembler that where the code will

Start:

    cli                    ; Clear all Interrupts
    hlt                    ; halt the system

times 510 - ($-$$) db 0                ; We have to be 512 bytes. Clear the rest of the bytes with 0

dw 0xAA55                    ; Boot Signature

Я попробовал мастер ISO на Ubuntu. Он конвертирует двоичный файл в ISO, но не в загрузочный ISO. Bochs показывает ошибку "cd is not eltorito", которую я погуглил и обнаружил, что она является стандартной для загрузочного ISO. Какие дополнительные вещи я должен добавить к нему, чтобы сделать его загрузочным. Я уже добавил загрузочную подпись в конце. Может ли кто-нибудь подсказать надежное приложение для создания загрузочного ISO на Ubuntu? Моя работа зависла из-за этого .... ИЛИ Я почти уверен, что в разработке ОС на платформе Linux должно быть много людей. Как вы тестируете?

Я сделал загрузочную флешку с Unetbootin с iso моей программы загрузчика. переключился на Virtual-box и немного покрутил, чтобы загрузиться с флешки, но все равно показывает, что он не загружается. Я думаю, что кто-то правильно сказал, что вам нужно много терпения в разработке ОС.


: уф наконец моя программа загрузчика запустилась ...
Я использовал образ виртуальной дискеты для загрузки моей программы на Virtual Box. Вот шаги на тот случай, если кто-то борется с этим.
1. Создайте boot.asm с вашей программой загрузчика.
2. Скомпилировать с помощью nasm. nasm -f bin boot.asm -o boot.bin.
3.sudo mkfs.msdos -C /home/[11132247 providedusername[11132248 impression/floppy.img 1440
4. sudo chown имя пользователя ./floppy.img. текст ссылки
5.Копировать с dd. dd if =. / boot.bin из =. / floppy.img.
6. Запустите VirtualBox и выберите floppy.img в качестве загрузочного устройства на вашей новой виртуальной машине.
PS: вы также можете прикрепить floppy.img к "петле" устройства и смонтировать его как настоящую дискету.

6
задан Peter Cordes 28 December 2017 в 01:11
поделиться