使用ARM Linux内核帮助程序函数

时间:2016-09-27 09:10:23

标签: linux linux-kernel arm

我正在努力理解ARM kernel helper functions应该如何在Linux中运行。

我正在调试尝试使用它们的程序,但它们似乎会导致严重的堆栈损坏和SIGILL CPU异常。

我的一个问题是弄清楚它们是否内置于我拥有的内核中。但是,查看内核源代码,我无法设计编译标志来启用/禁用它们。

我遇到的另一个问题是我的gdb无法检查相应的区域:我也无法读取

 0xffff0ffc ; __kuser_helper_version 
的内存,也不能反汇编这些函数。

我尝试编写一个简单的程序来阅读API级别:

#include <stdio.h>
int main( int argc, char **argv ){
    int * ptr = (int *)0xffff0ffc;
    printf("%d\n", *ptr);
}
而且,有点不出所料,我遇到了分段错误。

因此我的问题是:userland程序如何利用这些功能,以及应用程序调试器如何跟进这些功能呢?

0 个答案:

没有答案