Once we disassembled the ELF to check the sections using “objdump” command, we can see the lines as “CONTENTS, ALLOC, LOAD, READONLY, CODE” along with sections. Sections: Idx Name Size VMA LMA File off Algn 1 .text 000031b8 00008018 00008018 00008018 23 CONTENTS, ALLOC, LOAD, READONLY, CODE 8 .data 00000844 0001b308 0001b308 0000b308 23 CONTENTS, ALLOC, LOAD, DATA 9 .bss 0000007c 0001bb4c 0001bb4c 0000bb4c 2**2 ALLOC In this post, we describe the meaning of each of this. You can also check “How to check sections and its memory map of Binary / ELF using GDB ?” for getting sections details if you are actively debugging using GDB.

Implementation details

The meaning of each of this is as below, ALLOC – Section will have space allocated in the process when loaded. Set for all sections except those containing debug information. LOAD – Section will be loaded from the file into the child process memory. Set for pre-initialized code and data, clear for .bss sections. RELOC – Section needs to be relocated before loading.

Gotchas and common issues

  • Permission checks - verify user access rights and sudo privileges before executing system-level operations.

  • Environment configuration - double-check path variables and dependency versions to prevent runtime failures.

  • Backup safeguards - maintain configuration backups before applying system or database modifications.

Following these steps ensures clean configuration and reliable execution for meaning of “contents, alloc, load, readonly, code” in elf sections.