用homebrew傻瓜式
brew install sdlbochs-2.6.8.tar.gz 1.解压压缩包
tar -xvf bochs-2.6.8.tar.gz2.切换到解压目录cd bochs-2.6.8内,执行如下配置
./configure --enable-ne2000 \ --enable-all-optimizations \ --enable-cpu-level=6 \ --enable-x86-64 \ --enable-vmx=2 \ --enable-pci \ --enable-usb \ --enable-usb-ohci \ --enable-e1000 \ --enable-debugger \ --enable-disasm \ --disable-debugger-gui \ --with-sdl \ --prefix=$HOME/opt/bochs3.安装bochs
make make install4.拷贝 ~/opt/bochs/share/doc/bochs/bochsrc-sample.txt 下的配置文件并作修改,此配置为从软盘镜像启动。
找到如下两行并注释掉
sound: driver=default, waveout=/dev/dsp. wavein=, midiout= ... ata0-master: type=disk, mode=flat, path="30M.sample"检查如下几处并做如下修改:
romimage: file=$BXSHARE/BIOS-bochs-latest vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest # 1.44=磁盘镜像位置 floppya: 1_44=a.img, status=inserted # 从软盘启动 boot: floppy log: bochsout.txt # 置鼠标不可用 mouse: enabled=0 keyboard: keymap=#$BXSHARE/keymaps/x11-pc-us.map megs: 325.配置环境变量
`vim ~/.bash_profile`添加如下两行:
export BXSHARE="$HOME/opt/bochs/share/bochs" export PATH="$PATH:$HOME/opt/bochs/bin"首先,bximage命令创建一个软盘镜像a.img(对应配置文件中的floppya):
手写一个简单的“引导程序” boot.asm
org 0x7c00 jmp entry db 0x90 entry: mov ax,0 mov ss,ax mov sp,0x7c00 mov ds,ax mov es,ax mov si,msg putloop: mov al,[si] add si,1 cmp al,0 je fin mov ah,0x0e mov bx,15 int 0x10 jmp putloop fin: hlt jmp fin msg: db 0x0a,0x0a db "hello world!" db 0x0a db 0 times 510 - ($-$$) db 0 dw 0xaa55编译
nasm boot.asm -o boot.bin将引导程序写进软盘镜像
dd if=boot.bin of=a.img bs=512 count=1 conv=notrunc启动bochs bochs -f 配置文件位置
bochs -f bochsrc.txt也可直接运行bochs ,进入后键入2来更改配置文件路径,键入6运行虚拟机