what is segment 00 in my Linux executable program (64 bits)
问题 Here is a very simple assembly program, just return 12 after executed. $ cat a.asm global _start section .text _start: mov rax, 60 ; system call for exit mov rdi, 12 ; exit code 12 syscall It can be built and executed correctly: $ nasm -f elf64 a.asm && ld a.o && ./a.out || echo $? 12 But the size of a.out is big, it is more than 4k: $ wc -c a.out 4664 a.out I try to understand it by reading elf content: $ readelf -l a.out Elf file type is EXEC (Executable file) Entry point 0x401000 There are