Windows平台使用gdb连接qemu虚拟机上的系统
Posted bcbobo21cn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows平台使用gdb连接qemu虚拟机上的系统相关的知识,希望对你有一定的参考价值。
先安装MinGW;
除了gcc、g++,把gdb也选上;可能选第一个就可以了,不清楚把后面几个也选上;
安装完成看一下gcc, g++,gdb,编译工具和调试器都有了;
把bin目录加到环境变量;
看一下版本,编译工具和调试工具可用;
然后找一个基本linux镜像来,通过qemu虚拟机加载,把此镜像拷贝到qemu安装目录,这个基本linux的img文件是bochs虚拟机自带的;
先输入下图命令看一下qemu能否加载此镜像;可以;进入DLX的登录界面;
根据资料,qemu虚拟机命令行,加入s参数,将开启1234端口,这是gdb调试器来连接的端口,加入S参数,使内核等待;带上小s和大S参数看一下,
无法启动;应该是只有自己编译的内核,加入某些配置,才能使用S参数,可调试内核;前面那个不行;
只带小s参数启动;可以启动;开启了1234端口,
进入gdb,qemu虚拟机未运行之前,使用远程连接命令,出错如下,
如果qemu带s参数运行起来,如前图,在gdb中敲入远程连接命令,看一下如下图,会连接到虚拟机上;但是没有连接内核,不能调试,只有自己编译的内核才能调试;
有时间继续;
以上是关于Windows平台使用gdb连接qemu虚拟机上的系统的主要内容,如果未能解决你的问题,请参考以下文章
qemu虚拟机的初步使用了解linux下gdb和gdbserver
在 Microsoft Azure 平台虚拟机上调试 Windows 内核