я пытаюсь написать загрузчик (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 eltorito», которую я нагуглил и нашел стандартной для загрузочного ISO. Какие дополнительные вещи я должен добавить к нему, чтобы сделать его загрузочным.я уже добавил загрузочную подпись в конце.Кто-нибудь может предложить надежное приложение для создания загрузочного ISO в Ubuntu?Моя работа застряла из-за этого .... ИЛИ я уверен, что многие люди должны быть вовлечены в разработку ОС на платформе Linux.Как вы тестируете?
Я сделал загрузочную флешку с Unetbootin с iso моей программы загрузчика.переключился на Virtual-box и немного повернулся, чтобы загрузиться с pendrive, но он все еще показывает, что он не загружается.Я думаю, что кто-то сказал правильно, что вам нужно много терпения в разработке ОС.
: наконец, моя программа загрузчика запустилась ...
Я использовал образ виртуальной дискеты для загрузки моей программы на виртуальной машине.Вот шаги на случай, если кто-то с этим борется.
1. Создайте boot.asm, в котором есть ваша программа загрузчика.
2.Скомпилируйте с nasm.nasm -f bin boot.asm -o boot.bin.
3.sudo mkfs.msdos -C /home/username/floppy.img 1440
4.sudo chown имя пользователя ./floppy.img. текст ссылки
5. С копией дд.dd if =. / boot.bin of =. / floppy.img.
6. Запустите VirtualBox и выберите floppy.img в качестве загрузочного устройства на вашей новой виртуальной машине.
PS: вы также можете прикрепить floppy.img кУстройство «зациклите» и смонтируйте его как настоящую дискету.