0

我现在正在反汇编很多 iOS 操作系统代码(框架、系统守护进程)。进行系统调用的常用方法之一是使用 mach_msg。

所以,我可以在客户端看到 mach_msg 是如何构造的。我经常知道一个系统守护进程,它会处理这个调用。但是,我不确定如何在这个守护进程反汇编代码中找到调用处理程序。

有没有好的经验法则,如何找到处理程序?

4

1 回答 1

1

我发现以下(至少在一个守护进程中)

a) mach_msg_server_once 方法被调用,它的第一个参数是回调方法

b) 通常此回调方法检查 msgh_id 并在调度表中查找要调度调用的方法的地址。

于 2012-09-11T21:51:51.473 回答