代码之家  ›  专栏  ›  技术社区  ›  Ivan Baidakou

在C/linux中没有磁盘I/O的linux上自己运行进程时读取调试/静态符号?

  •  0
  • Ivan Baidakou  · 技术社区  · 6 年前

    objdump , readelf , nm 等等,但不是一种选择。

    我想要的是一个函数 string get_symbol_at(uint64_t addr) .

    0 回复  |  直到 6 年前
        1
  •  0
  •   Ivan Baidakou    6 年前

    ELF文件中的静态/调试符号以 DWARF -格式。可以通过分析调试信息来发现它们。然而,所有 .debug_* 部分似乎很简单 未加载 see ),因为它们非常大,对程序执行没有用处(只有在调试程序时才有用)。

    因此,答案是:当需要调试符号时,必须通过自己的力量从磁盘读取可执行文件。