笔记2 测试开发环境的实验

为了测试我们搭建的开发环境,我们现在来做一个第一个实验,写一个简单的引导扇区,并让它在虚拟机里跑起来。


 一.先在某个文件夹(比如:os)中建立文件boot.asm,如下:

org 0x7c00

mov ax,cs
mov ds,ax
mov es,ax

call ShowStr
jmp $

ShowStr:
    xor esi,esi
    mov esi,BootMessage
  .loop:
    mov al,byte[esi]
    cmp al,0
    je .end
    
    mov ah,0x0A
    mov bx,0x000c
    mov cx,1
    int 10h

    xor eax,eax
    xor ebx,ebx
    xor edx,edx
    mov ah,0x03
    mov bh,0
    int 10h

    inc dl
    mov ah,0x02
    int 10h

    inc esi
    jmp .loop
  .end:
    ret

BootMessage:
    db "Hello,world",0

times   (510-($-$$)) db 0
dw 0xaa55


二.用nasm编译,命令如下:

nasm –o boot.bin boot.asm

三.建立软盘映像

终端输入如下命令:

bximage(回车)
1(回车)
fd(回车)
(回车)
(回车)
接着,我们再利用linux下的dd命令,将boot.bin写入软盘映像a.img,命令如下:

dd if=boo.bin of=a.img bs=512 count=1 conv=notrunc


四.建立bochs的配置文件,如下:

#配置文件注释是‘#’

#指定内存大小为32MB
megs:32

#bochs安装文件的BIOS&VGABIOS路径,这个路径要看自己的电脑
romimage:file=/usr/local/share/bochs/BIOS-bochs-latest
vgaromimage:file=/usr/local/share/bochs/VGABIOS-lgpl-latest

#制定要使用的软盘
floppya:1_44=a.img,status=inserted

#使用软盘启动
boot:floppy

#不使用鼠标
mouse:enabled=0

#键盘相关,要看自己电脑上的路径
keyboard_mapping:enabled=1,map=/usr/local/share/bochs/keymaps/x11-pc-us.map

#存放log文件的文件
log:bochsout.txt

五.启动bochs

在终端输入命令:

bochs –q

来启动bochs,可以看到bochs成功运行,如下图所示:


可以看出,我们的系统正在正常运行。








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值