首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在可引导介质上找不到引导加载程序

在可引导介质上找不到引导加载程序
EN

Stack Overflow用户
提问于 2012-08-06 15:38:23
回答 1查看 306关注 0票数 1

我目前正在使用mkisofs,dd和汇编。我已经创建了简单的bootloader:

代码语言:javascript
复制
BITS 16
;-------------------
;SIMPLE BOOTLOADER
;-------------------
start:
    mov ax, 0x07C0
    mov ds, ax

    mov si, welcmsg
    call printstr

    mov ah, 0Eh
    mov al, 65
    int 10h

    cli;
    hlt;    

printstr:
    pusha
    mov ah, 0Eh
    .loop:
        mov al, byte [ds:si]

        cmp al, 0
        jz .end
        int 10h

        inc si
        jmp .loop
    .end:
        popa
    ret
;-------------------
;DATA
;-------------------
welcmsg: db "Welcome!", 0x0D, 0x0A, 0
;-------------------
;FILL
;-------------------
times 510-($-$$) db 0
dw 0xAA55

我已经使用NASM在linux上编译了它。编译成功后,我复制了512字节的.bin文件的内容,并使用Okteta十六进制编辑器将其粘贴到空的.img文件。

代码语言:javascript
复制
dd if=/dev/zero of=boot.img bs=512 count=2880

然后我使用mkisofs创建了.iso文件。

代码语言:javascript
复制
mkisofs -U -D -floppy-boot -b  boot.img -c boot.catalog -hide boot.img -hide boot.catalog -V "test" -iso-level 3 -L -o test.iso content

我已将此.iso映像添加到虚拟机设置并启动它。我的问题是VirtualBox错误消息:

代码语言:javascript
复制
FATAL: No bootable medium found.

有人知道我做错了什么吗?我怎样才能让它正常工作?请帮帮忙。

EN

回答 1

Stack Overflow用户

发布于 2013-02-08 02:37:25

这是另一个在SO上开发引导加载程序的人。你可能想在OSDev上找到更多的想法,并与从头开始构建它的社区联系起来。至于为什么你的努力没有启动,我想知道你是否需要检查一下Using Virtualbox as a bootloader testing environment。就像我之前说的,你已经有了一个很好的开始,一切顺利。干杯!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11824231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档