菩提本无树,明镜变非台 本来无一物,何处惹尘埃
分类: LINUX
2013-09-24 18:35:41
1.1 使用sprint_symbol内核函数
函数功能描述:
该函数根据一个内存中的地址address查找一个内核符号,并将该符号的基本信息,如符号名name,它在内核符号表中的偏移offset和大小size ,所属的模块名(如果有的话)等信息连接成字符串赋值给文本缓冲区buffer 。其中所查找的内核符号可以是原本就存在于内核中的符号,也可以是位于动态插入的模块中的符号。
输入参数说明:buffer :文本缓冲区,它用来记录内核符号的信息,它是一个输出型参数。
address:内核符号中的某一地址,为输入型参数。
返回参数说明:返回值是一个int型,它表示内核符号基本信息串的长度,也即是buffer所表示的字符串的长度。
3.1利用System.map
$ grep “函数名或地址” /usr/src/linux/System.map
3.2使用nm 命令:
$ nm vmlinuz | grep “函数名或地址”
3.3利用 /proc/kallsyms
$ cat /proc/kallsyms | grep “函数名或地址”