2、sys.s
mov ax,cs
mov ds,ax
mov es,ax
mov ss,ax
mov ax,msg
mov bp,ax
mov cx,msgLen
mov ax,01301h
mov bx,000ch
mov dl,0
int 10h
jmp $
msg:
db "It's the world of kernel!",0ah
msgLen equ $-msg
times 512-($-$$) db 0
  将上述两个汇编程序编译之后生成boot.bin sys.bin 然后使用命令dd if=sys.bin of=boot.bin bs=512 seek=1 count=1 将这两个512字节的bin文件做成一个1024字节的文件(即boot在软盘的第一个扇区,sys在软盘的第二个扇区)
  使用qemu-system-i386 -hda boot.bin 只出现了“Now,begin to load kernel....”一句话,换言之,sys并没有执行,但是使用bochs模拟却完全没有问题。
  原因:应该使用qemu-system-i386 -fda boot.bin ,因为boot中使用的int 13h按照软驱的方式读取的,所以应该使用参数为-fda
  若要使用硬盘启动的话,将程序的中的
  load:
  mov dx,0x0000  ;dh->磁头号,dl->驱动器号
  改为:
  load:
  mov dx,0x0080  ;dh->磁头号,dl->驱动器号,软驱从0开始:  ==> 软驱A:0  软驱B:1
  ;硬驱从80h开始: ===> 硬盘C:80h    硬盘D: 81h ....
  即可!