Q1 ELF中程序头(Program header)和节头(Section Header)之间有什么区别? Q1.1 段(segment)和节(section)之间的区别是什么? 我认为pheaders只指向sections。 Q2 文件头(File Header)和程序头(Program ...
有没有推荐一个跨平台的库,可以读取DWAF格式的ELF文件调试信息?我想在Python程序中读取DWARF调试信息。
执行程序时,程序将从虚拟地址0x80482c0开始运行。此地址不指向我们的main()过程,而是链接器创建的名为_start的过程。 目前我的谷歌研究只导致了一些(模糊的)历史推测,比如这个: “有一种传说是0x08048000曾经是STACK_TOP(也就是说,栈从接近0x0804800...
我的项目是修改Linux内核。我有一台桌面Linux机器,构建内核没有问题。 然而,我要外出旅行,并希望边走边工作。我只有一台MacBook。当我尝试构建Linux内核时,它抱怨找不到elf.h。 我从互联网上下载了一个elf.h。现在它报错:NO ELF 我试着将整个/usr/incl...
我该如何找到一个程序或另一个库使用的共享对象中的哪些函数? 在这个具体的情况下,我想知道在 /lib/libgcc1_s.so.1 中的哪些函数被另一个动态库使用。 由于它们是动态链接的,objdump -d 无法解析函数调用地址。 除了在调试器中运行程序或静态地重新链接之外,是否有其他方法?...