PC和LR在Android内核中具有相同的功能

时间:2013-03-08 11:47:47

标签: android assembly linux-kernel arm

我遇到的问题是PC 1 LR 2 都指向 内核的sched.c中的函数cpuacct_charge()。是否存在可能发生这种情况的任何情况?我的分析显示cpuacct_charge()函数没有递归。我无法提供代码。但是,任何情况下发生这种情况都会有很大帮助。

澄清: PC和LR的值指向功能中的其他位置:
void cpuacct_charge(struct task_struct *tsk, u64 cputime)

注1: PC - 程序计数器
注2: LR - 链接注册

1 个答案:

答案 0 :(得分:1)

当一个函数返回时,它基本上会转移到链接寄存器中的地址。

所以,大概是你在函数返回后立即暂停了程序。