使用vmware workstation+gdb调试虚拟机的启动过程

一、修改vmx配置文件(32位内核程序下述内容所有64改为32)

在虚拟机的vmx文件的结尾加上下属内容:

debugStub.listen.guest64 = "TRUE"
debugStub.hideBreakpoints = "TRUE"
debugStub.listen.guest64.remote = "TRUE"
monitor.debugOnStartGuest64 = "TRUE"
# 未指定下面的端口,则64位默认8864
debugStub.listen.guest64.port = "8864"

32位

debugStub.listen.guest32 = "TRUE"
debugStub.hideBreakpoints = "TRUE"
debugStub.listen.guest32.remote = "TRUE"
monitor.debugOnStartGuest32 = "TRUE"
# 未指定下面的端口,则32位默认8832
debugStub.listen.guest64.port = "8832"

debugStub.listen.guest64 = “TRUE”: 这个参数启用了虚拟机的64位客户机调试功能,允许在64位客户机操作系统中进行调试。

debugStub.hideBreakpoints = “TRUE”: 这个参数在调试过程中隐藏断点信息,使得调试过程更加隐秘。这在某些情况下可以用于防止恶意用户利用调试功能来破坏虚拟机的安全性。

debugStub.listen.guest64.remote = “TRUE”: 这个参数指示虚拟机启用远程调试功能,允许使用远程调试器连接到虚拟机并进行调试操作。

monitor.debugOnStartGuest64 = “TRUE”: 这个参数指示虚拟机启动时自动开始进行64位客户机调试。这样,虚拟机将在客户机操作系统启动时等待调试器的连接,并允许进行调试操作。

二、gdb连接
在gdb中输入命令:
如果vmware在物理机上,且使用win的cmd来执行dgb,直接启动dgb,使用命令:

target remote localhost:8864

如果在wsl中
先查看物理机ip:

ip route | grep default | awk '{print $3}'

再链接

target remote ip:8864
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值