1. vmware
用virtualBox也可以
2.ubuntu
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/20.04.6/ubuntu-20.04.6-desktop-amd64.iso
不推荐archilinix,centos ,需要源码安装,会浪费很多时间
sudo apt install bochs
sudo apt install bochs-x
安装成功之后,执行bochs
选择4
输入bochsrc,接下来输入7
然后vim bochsrc, 如果没有vim 命令,执行sudo apt install vim
将display_library: x 这一行改成display_library: x, options="gui_debug"
保存退出
执行bochs -q, 可以弹出白色窗口即可
3.vscode
在ubuntu中执行ifconfig获取ip地址,如果没有这个命令执行
sudo apt install net-tools
vscode 安装插件remote-ssh
连上之后打开对应目录,那么就在这里开发即可,如果出现连接不上可以执行
sudo apt install openssh-server
sudo nano /etc/ssh/sshd_config
接着我们创建一下硬盘,输入bximage
就会在当前目录下有一个myos.img
修改bochsrc文件
将ata0-master: type=none 这一行改成ata0-master: type=disk, path="myos.img", mode=flat
将boot: floppy改成boot:disk
保存退出
编写代码
新建一个hello.asm
mov ax, 0xb800
mov ds, ax
mov byte[0], 'H'
jmp $
times 510 - ($-$$) db 0
db 0x55, 0xaa
sudo apt install nasm
输入nasm hello.asm -o hello.bin
dd if=hello.bin of=myos.img bs=512 count=1 conv=notrunc
bochs -q 出现输入框就输入c,可以看到首字母就是H了