GDB QEMU 调试Linux0.11
参考:https://www.cnblogs.com/chaoguo1234/p/16883932.html
安装QEMU
qemu 是模拟器,简单理解和虚拟机一样,用来当做真机启动 Linux 0.11 的。
官网是这个:
https://www.qemu.org/
我们在刚刚的 Ubuntu 虚拟机里直接按照官方教程下载 qemu
sudo apt-get install qemu
下载好后,我们输入 qemu-,按两下 tab,查看下支持的体系结构。
看到有 qemu-system-x86_64 即可,一会我们会用这个来模拟启动 Linux 0.11。
安装linux0.11
1.下载内核源码和根文件系统镜像
wget http://oldlinux.org/Linux.old/bochs/linux-0.11-devel-040809.zip
Linux-0.11内核源码的改进版,可以在gcc- 5.5.0下顺利编译通过,原生代码只能在gcc-1.4下编译:
https://github.com/yuanxinyu/Linux-0.11
git clone git@github.com:yuan-xy/Linux-0.11.git
2.编译Linux-0.1
make
运行:
make start
vscode 远程gdb
launch.json:
{
"version": "0.2.0",
"configurations": [
{
"name": "GDB",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/tools/system",
"miDebuggerServerAddress": "localhost:1234",//wsl ip地址+调试端口
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb"
}
]
}
修改makefile:
如图将x86_64 改成i386
make debug
然后打开vscode调试