This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

What the meaning of Zero Initialized data, ZI Data

Can anyone tell me the meaning of Zero Initialized Data (ZI Data). Do they actually take up RAM maps. It would be best explained in practical point of view, ie is this global or local type of variable. I use Keil and Cortex-M0.

I declared variable within code that point to FLASH region as part of emulated ROM code. However according to the .map, it shown that ZI Data = 1024 Byte which is 8 * 128 = 1024 Byte. This lead to incorrect conclusion about RAM size as .map indicated.

EEEDATA_TYPE EEEFLASH[8] __attribute__((at(0x10007C00U))); //this instruct linker to align data to the specific FLASH location. Keil specfic.

Is there nice tutorial or PDF that explain how to use / meaning if RO, RW and ZI data and how to manage them where necessary.