大概步骤:用汇编语言写好代码(简易操作系统)——用下载好的NASM编译器编译成二进制文件——用软盘写入工具(FloppyWriter.exe)写入下载好的软盘——在在新键的虚拟机上加入软盘驱动器,采用此软盘(镜像文件)——启动虚拟机即可
- NASM编译器
- FloppyWriter.exe 软盘写入工具
- 软盘启动文件" BOOTDISK.img "
- 虚拟机
方法/步骤
• 1
先写好汇编代码boot.asm保存到桌面,比如:
org 07c00h; 告诉编译器程序加载到7c00处
mov ax, cs
mov es, ax
call DispStr; 调用显示字符串例程
jmp $; 无限循环
DispStr:
mov ax, BootMessage
mov bp, ax; ES:BP = 串地址
mov cx, 16; CX = 串长度
mov ax, 01301h; AH = 13, AL = 01h
mov bx, 000ch; 页号为0(BH = 0) 黑底红字(BL = 0Ch,高亮)
mov dl, 0
int 10h; 10h 号中断
ret
BootMessage: db "Hello,why not next character"
times 510-($-$$) db 0; 填充剩下的空间,使生成的二进制代码恰好为512字节
dw 0xaa55; 结束标志
可以用记事本或其他编译器写(boot.txt),写完后文件名改为boot.asm(汇编文件)- 2
下载NASM编译器(一个文件夹,包含一些命令文件,可以从网上找),把boot.asm文件复制到NASM文件夹中 - 3
点击左下角Windows图标,输入cmd,打开命令行窗口,跳转到NASM文件夹;
输入 :nasm boot.asm -o boot.bin
“ 回车”即完成编译,此时在NASM文件夹会生成 “boot.bin ”文件
- 4
下载软盘镜像文件(BOOTDISK.img),下载软盘写入工具(如FloppyWriter.exe),用此工具把此boot.bin文件写入到软盘镜像文件(如BOOTDISK.img)中
- linux下:nasm boot.asm -o test.bin;
- dd if=test.bin of=test.img bs=512 count=1
- 5
打开虚拟机,新建虚拟机,可下载VMware workstations 。
- 6
由于只是做实验,可选“推荐”类型创建 - 7
可先为虚拟机创建一个硬盘 - 8
客户操作系统可选“其他”,版本可选MS-DOS - 为你创建的虚拟机取个名字,并选择把它创建在哪个位置(应给虚拟机建一个文件夹)
- 因为是实验演示,磁盘大小选默认就行,点击下一步
- 选择完成就行
- 完成后在虚拟机左边框可看到“我的计算机”下方出现“boot”。此时点击“boot”,然后点击“编辑虚拟机设置”(添加软盘驱动器和软盘)
- 选中左边框下面的“添加”,然后点击“确定”
- 选中“软盘驱动器”,然后点击”下一步”
- 此处可选择“使用软盘镜像”,然后点击“下一步”
- 找到那张写入了操作系统的软盘镜像文件(BOOTDISK.img),点击“完成”
- 然后开启此虚拟机的“boot”操作系统
- 看到界面窗口出现“Hello ,OS World!”即实验完成。