【发布时间】:2012-05-21 16:52:30
【问题描述】:
什么是/proc/ksyms和/proc/kallsyms,为什么映射到进程地址空间?它的用途是什么?是否在系统调用期间用于内核的上下文切换?
【问题讨论】:
什么是/proc/ksyms和/proc/kallsyms,为什么映射到进程地址空间?它的用途是什么?是否在系统调用期间用于内核的上下文切换?
【问题讨论】:
ksyms(7d) 的 Solaris 手册页对此进行了说明。数据仅供参考,内核以这种方式通过/dev/ksyms 向内核调试器和/或内核模块加载器公开其当前使用的符号表。
Linux 通过/proc/kallsyms 做同样的事情; /proc/ksyms - 如果存在 - 是“传统”文件,表示相同数据的子集(即已弃用)。
与 Linux/Solaris 一样,区别在于 Linux 版本显示文本,而 Solaris 版本是二进制。您可以在 Solaris 上运行 nm /dev/ksyms 以获得与在 Linux 上从 cat /proc/kallsyms 获得的相同类型的输出。
【讨论】: