ELF代表可执行文件和可链接格式,是包含机器代码的文件的文件格式。
鉴于所附代码,以及与此问题“.text 部分解析期间的全局缓冲区溢出”相关的代码,我想知道是否可以修改此代码以仅解析内存中的 .text 部分(
考虑以下程序: #包括 __属性__((noinline)) int add(int a, int b) { 返回a+b; } int add_external_def(int a, int b); int main() { 原则...
我正在实现一个Android应用程序,它在本机代码中读取加载到内存中的自己的代码。我对在磁盘上读取它不感兴趣,而是对正在运行的读取感兴趣。 外部字符 __ehdr_star...
我最近看到这篇文章,描述了 Linux 的最小可能的 ELF 可执行文件,但是这篇文章是为 32 位编写的,我无法获得在我的机器上编译的最终版本。
我最近看到这篇文章描述了最小的可能的 ELF 可执行文件,但是这篇文章是为 32 位编写的,我无法获得在我的机器上编译的最终版本。这个br...
从相应的 ELF 核心转储文件访问进程的内存映像的(正确)方法是什么?通过某种方式,我可以检查特定地址,例如 0x12345678。 请牢记
看到这个问题的大家好。我有个问题。首先,我目前正在内核中编写 ELF 阅读器,现在遇到一个问题。这个问题出在字符串上。我的意思是...
p_align 字段的具体用途是什么?每个在线来源都只说了一些模糊的内容,说段的“必需对齐”,或者只是说它是一个值,以便 p_...
p_align:ELF加载器如何处理两个可加载段占用同一虚拟页的可能性?
根据我的理解,程序头的“p_align”字段允许加载器轻松确定是否可以将文件页面简单映射到内存页面,以便加载一个部分。 哈...
如何完全摆脱 .dynsym、.dynstr 和 .dynamic 部分?
我有一个静态链接的二进制文件,我正在尝试缩小它的大小。我不明白为什么它会发出动态部分,而且我认为它不应该这样做。 我认为 -fpic -fPIC 应该摆脱所有
Linux 用户空间 api:如何在不解析 /proc/self/maps 的情况下获取作为 PIE 链接的正在运行的可执行文件的地址空间大小?
在 dl_iterate_phdr 的帮助下,我可以通过 dlpi_addr 加载主可执行文件和所有二进制文件的起始地址,它与我可以通过 printf 打印的函数指针地址相关,但是其他字段...
我正在尝试创建ELF格式标题编辑器。在开发过程中,我注意到在两个字节的二进制组中总是反转的。 例如,这是一个十六进制转储(我将其称为 hexdum...
我有以下ELF符号(在汇编文件中定义): .memory_info 部分的反汇编: 10000bb8 <__memory_info>: 10000bb8: 10000bd4 ldrdne r0, [r0], -r4 10000bbc:20000000 个...
我有以下ELF符号(在汇编文件中定义): .memory_info 部分的反汇编: 10000bb8 <__memory_info>: 10000bb8: 10000bd4 ldrdne r0, [r0], -r4 10000bbc:20000000 个...
我正在尝试学习 ELF 格式并正在实现一个 ELF 解析器。到目前为止,我已经实现了 ELF 标头解析器,并且正在解析段,特别是 .text 段。我被困在这里
是否可以向 CMake 生成的链接命令行添加其他选项作为某些构建操作的结果? 具体来说,我需要通过静态保留一些未引用的符号
在使用 SDL 开发的 elf 文件类型的游戏中,当我移动鼠标时,即使我将鼠标移动到左侧,它也只会移动到右侧。我尝试使用 ubuntu 2...
问题 在编译期间获取多个源文件并生成单个目标文件是相当常见的(g++ -c file1.cpp file2.cpp)。是否有可能走另一条路并创建多个
BSD 和 Linux 是否有始终使用且特定于内核的系统调用?
我目前正在开发一个项目,该项目依赖于检测可执行文件属于哪个操作系统。 我只处理 ELF 可执行格式,所以我尝试使用 e_ident[EI_OSABI] 值,但没有给出 hea...
在 Linux 上为 FatFS 和 FreeRTOS + FAT 创建 FAT 磁盘映像
我一直在使用带有 FreeRTOS + FAT 库的 CVA6 RISCV 核心来创建 RAMDisk,其中包含在裸机上运行 San Diego Vision Benchmark 所需的一些文件。 我一直在寻找一种方法来创建...