Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试修补 Android 框架源和内核。我需要知道我是否想在每次 Zygote 分叉后访问进程堆栈之类的东西,最好的方法是什么?我尝试通过可加载内核模块在内核级别执行此操作,但是,如何在每次分叉后执行该模块?有没有办法从框架源调用内核中定义的函数(例如:在 dalvik/vm/native/dalvik_system_Zygote.c )?这可能看起来很幼稚,但如果有人能引导我朝着正确的方向前进,我将不胜感激。
好吧,我有点想通了。我所做的是在内核精灵库中定义了一个新的系统调用。这样,我可以通过 STACK_TOP 获取堆栈地址。系统调用在 fork 之后调用,它只返回堆栈地址值。