Linker script and data allocation
Ask yourself how could the system work if it isn't true?

In most implementations, the .data segment is for initialized data, where .bss is for data that is set to zero.  You can't count on RAM being set to anything at all on power-up, so the processor has to zero out the .bss segment and initialize .data.

Usually this is done by storing an image of the start-up value of the .data segment in ROM, and copying it to the correct location in RAM on startup.