怎么查看linux的内核符号表?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么查看linux的内核符号表?相关的知识,希望对你有一定的参考价值。

参考技术A 在内核中通过/proc/kallsyms获得符号的地址

Linux内核符号表/proc/kallsyms的形成过程
./scripts/kallsyms.c负责生成System.map
./kernel/kallsyms.c负责生成/proc/kallsyms
./scripts/kallsyms.c解析vmlinux(.tmp_vmlinux)生成kallsyms.S(.tmp_kallsyms.S),然后内核编译过程中将kallsyms.S(内核符号表)编入内核镜像uImage
内核启动后./kernel/kallsyms.c解析uImage形成/proc/kallsyms
/proc/kallsyms包含了内核中的函数符号(包括没有EXPORT_SYMBOL)、全局变量(用EXPORT_SYMBOL导出的全局变量)
如何将内核中的函数、全局变量、静态变量都导出到/proc/kallsyms

查看内核 使用 uname -a
参考技术B 内核符号表什么意思?
是查看内核吗?

uname -a追问

cat /proc/kallsyms

本回答被提问者采纳

怎么查看linux虚拟机的版本

查看linux内核版本命令:uname -rs

查看linux版本命令:cat /etc/issue

参考技术A cat/proc/version或者cat/etc/issue或者uname-a 参考技术B 方法一: 命令: uname -a 作用: 查看系统内核版本号及系统名称 方法二: 命令: cat /proc/version 作用: 查看目录"/proc"下version的信息,也可以得到当前系统的内核版本号及系统名称 执行效果如下图所示: 补充说明: /proc文件系统,它不是普通的文件系统,而是系统内核的映像,也就是说,该目录中的文件是存放在系统内存之中的,它以文件系统的方式为访问系统内核数据的操作提供接口。而我们使用命令“uname -a"的信息就是从该文件获取的,当然用方法二的命令直接查看它的内容也可以达到同等效果.另外,加上参数"a"是获得详细信息,如果不加参数为查看系统名称

以上是关于怎么查看linux的内核符号表?的主要内容,如果未能解决你的问题,请参考以下文章

Linux 内核模块符号信息以及strip命令

如何调试linux内核?

内核模块实验奔跑吧Linux内核

Linux:性能最高,未找到内核符号

如何获取内核文件的内存分布

《Linux内核设计与实现》课程学习重点问题总结