32 bit/64 位 ELF 二进制文件的程序大小 header table 和部分 header table

size of program header table and section header table for 32 bit/64 bit ELF binaries

32 位和 64 位 ELF 二进制文件的 ELF header 大小分别为 52 字节和 64 字节。我想知道程序 header table 或部分 header table 的大小是否也为 32 位和 64 位 ELF 二进制文件定义和固定?

我有一些 ELF 文件,其中所有 32 位和 64 位二进制文​​件的程序大小 header table 分别为 32 字节和 56 字节。类似地,所有 32 位和 64 位二进制文​​件的 header table 部分的大小分别为 40 字节和 64 字节。

I was wondering if the size of program header table or section header table is also defined and fixed for 32 bit and 64 bit ELF binaries?

每个表中 1 个 元素 的大小是固定的(sizeof(Elf{32,64}_Phdr)sizeof(Elf{32,64}_Shdr)),但是 这些表的大小取决于段和节的数量,并且这些数字在不同的二进制文件之间变化很大。