bochs启动虚拟机

1.编写boot.asm
 

  org 07c00h
  mov ax, cs
  mov ds, ax
  mov es, ax
  call DispStr
  jmp $


DispStr:
  mov ax, BootMessage
  mov bp, ax
  mov cx, 16
  mov ax, 01301h
  mov bx, 000ch
  mov dl, 0
  int 10h
  ret


BootMessage:  db "Hello, OS world!"
times 510-($-$$) db 0
dw 0xaa55

2.编译boot.asm

nasm boot.asm -o boot.bin

3.制作img软盘

bximage
#依次选择 [fd] [1.44] [a.img]

4.刻录软盘

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

5.编写boch配置

#bochsrc.conf

megs: 32

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

log: bochs.log

mouse: enabled=0

keyboard_mapping: enabled=1, map=/usr/local/share/bochs/keymaps/x11-pc-us.map

6.启动

bochs -f ./bochsrc.conf

7.运行结果

8.可能遇到的问题:

问题1:[XGUI ] bochs: cannot connect to X server
解决:参考该博客: https://www.cnblogs.com/ipaomi/p/7830778.html

问题2:  Warning: Missing charsets in String to FontSet conversion
解决: export LANG=C;

 


版权声明:本文为u010322362原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。