首页 > 解决方案 > 何制作可引导磁盘映像以使用 vmware 测试引导加载程序?

问题描述

我做了一个简单的引导加载程序,但我不知道用 vmware 测试它。

它在 bochs 中运行良好。但是我必须用 vmware 测试一下。

所以我正在尝试制作一个可启动的磁盘映像文件,但我不知道该怎么做。

; loader.asm

%macro setline 1
   mov al, 0x0a
   int 0x10
   mov ah, 0x02
   mov bh, 0
   mov dl, 0
   mov dh, %1
   int 0x10
%endmacro

[org 0x7c00]

cli

mov bp, 0x7c00
mov sp, bp

mov bx, null
call bios_writestr
setline 18

mov bx, logstr_1
call bios_writestr
setline 19

mov bx, logstr_2
call bios_writestr
setline 20

jmp $

bios_writestr:
   mov ah, 0x0e
   .Loop:
   cmp [bx], byte 0
   je .Exit
      mov al, [bx]
      int 0x10
      inc bx
      jmp .Loop
   .Exit:
   ret

null: db 0
logstr_1: db 'Hello, world', 0
logstr_2: db 'Hello! World!', 0

times 510-($-$$) db 0
db 0x55
db 0xaa

汇编:

nasm -f bin loader.asm -o loader.bin

那我该怎么办?我想在vmware中测试它。

标签: assemblyvmwarex86-16bootloaderosdev

解决方案


没有办法在不破坏任何东西的情况下将.bin文件转换为.iso,您可以使用真实世界的引导加载程序,如GrubLimineBOOTBOOT、ETC ......有一些指南可以在您的操作系统中使用它们:就像这个用于Grub 的指南。


推荐阅读