首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

自己动手写一个GDB|设置断点(原理篇)

long data; // 断点原来的数据 }; 围绕 breakpoint_context 结构,我们定义几个辅助函数,分别是: create_breakpoint():用于创建一个断点。...enable_breakpoint():用于启用断点。 disable_breakpoint():用于禁用断点。 free_breakpoint():用于释放断点。 现在我们来实现这几个辅助函数。...创建断点 首先,我们来实现用于创建一个断点的辅助函数 create_breakpoint(): breakpoint_context *create_breakpoint(void *addr) {...有了上面的基础,现在我们可以来编写 enable_breakpoint() 函数的代码了: void enable_breakpoint(pid_t pid, breakpoint_context *ctx...释放断点 释放断点的实现就非常简单了,只需要调用 free() 函数把 breakpoint_context 结构占用的内存释放掉即可,代码如下: void free_breakpoint(breakpoint_context

1.8K20
领券