前端之家收集整理的这篇文章主要介绍了
linux – 内核符号表映射到虚拟地址空间 – 为什么?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
什么是/ 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相同类型的输出.