基于 Self-hosted Debug 的调试

本文深入探讨了调试器的工作原理,从基础篇介绍Linux下的ptrace系统调用如何跟踪程序执行,到断点篇阐述X86架构下如何利用int3指令设置和处理断点,再到调试信息篇讲解DWARF如何作为地址和C代码之间的映射媒介。
摘要由CSDN通过智能技术生成
参考资料
描述了在linux os 下可以 用 ptrace系统调用  跟踪程序的pc 和 指令
描述了 在 X86架构,linux os 下
用 int 3 替换 目标程序 pc 地址的第一个字节
int 3 执行时 , 硬件会产生中断,系统处理之后,发送信号给debuger
debuger会覆盖int 3,然后接受用户的命令,打印堆栈
debuger获取的信息都是"地址"
而C代码中是"c函数或者变量"
DWARF就是 "地址""c函数或者变量" 的 媒介
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值