lldb有有回调函数监视模块被加载吗

最近在做一个lldb python 。要监视一个进程什么时候加载了哪个模块 做对应的处理。有没有一个回调函数是干这个的呢。找半天没找到。

紫薯布丁~~~~~~~~~~~~

1 个赞

就不知道它内部有没有这种操作。最好还是SB打头的那种公开API。

紫薯布丁…

是你没听懂我说的 。我就是问下lldb带这个功能没有 。windows下的调试器肯定是有能力监控dll加载,windows内核里面本身一个模块加载 都会去通知一下调试器 。把dll的加载也封装成了一个类似断点的event投递给应用层,我就是不知道ios底层有这个操作没有 。如果没有 lldb肯定也不支持 。如果支持 。多半是用SBListener来监听事件,但是我看了下好像没有。所以才问有人用过没有。没人用过这个功能就完蛋。

就iOS来说,静态库是直接打进machO文件的,而动态库在App启动时就全部加载了。
除非是用dlopen加载沙盒里的动态库,不然不存在加载时机这个问题。

嗯 很少有自己去用dlopen来加载。那确实就没有这个功能了 。我记得以前的linux下我都是去hook的dlopen来做的这个功能 。感觉怪怪的 。哎