Question: why bss and data segment separate?
Answer: All globally initialised values are stored in . data segment . i.e. initialised data segment and uninitialised values are stored in bss and compiler initialise those uninitiated values to zero automatically in bss. Then why data segment is separated as .