什么是/ proc / ksyms和/ proc / kallsyms,为什么它映射到进程地址空间?它有什么用途?是否在系统调用期间用于内核的上下文切换?
答案 0 :(得分:3)
ksyms(7d)
的Solaris联机帮助页解释了这一点。数据仅供参考,内核通过/dev/ksyms
以这种方式将其当前使用的符号表公开给内核调试器和/或内核模块加载器。
Linux通过/proc/kallsyms
做同样的事情; /proc/ksyms
- 如果存在 - 是一个“传统”文件,表示相同数据的子集(即不推荐使用)。
与Linux / Solaris一样,区别在于Linux版本提供文本,而Solaris版本是二进制版本。您可以在Solaris上运行nm /dev/ksyms
以获得与Linux上cat /proc/kallsyms
相同类型的输出。