bochs入门使用


bochs简介

bochs是一个x86平台模拟器;

Win10 WSL2(Ubuntu 18.04)下安装

安装bochs

sudo apt install bochs
sudo apt install bochs-x

WSL2支持GUI

  1. 安装X server

由于bochs默认使用到X window,也就是说需要X server,而WSL2是不包括X server的,因此需要在Windows上安装X server来处理WSL2(X client)发送来的图形显示请求;

最简单的方式就是安装MobaXterm了,MobaXterm由于内建有一个X server,它在启动后会默认监听6000端口,接受来自X client的请求;

  1. 配置X client

由于Linux(WSL2)通过环境变量DISPLAY来获取X server服务地址,我们可以在.bashrc文件末尾添加如下命令保证在WSL2(X client)启动后自动获取到X server地址;

export DISPLAY=`cat /etc/resolv.conf | grep nameserver | awk '{print $2}'`:0.0

demo测试

bochs提供了一个linux demo给我们测试,我们运行如下命令来测试:

wget https://sourceforge.net/projects/bochs/files/Disk%20Images/DLX%20Linux/dlxlinux4.tar.gz
tar -xvf dlxlinux4.tar.gz && cd dlxlinux
bochs -f bochsrc.txt

在出现如下界面时按c继续运行:

最终将会出现如下界面(提示dlx login时输入用户名root直接登录进去):

bochs常用调试命令

在上一步我们按键c使demo linux往下运行,bochs常用的调试命令如下表所示:

调试命令 功能
b 0x7c00 在内存0x7c00处设置断点
d n 删除第n个断点
info break 查询已设置断点
c 执行程序
s 单步执行
s n 执行n步
r 查看寄存器信息
sreg 查看段寄存器信息
print-stack 打印当前栈里的内容
u /6 0xfe05b 反汇编从内存地址0xfe05b起的6条命令
help 查看帮助


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM