map中三種內(nèi)存
編譯完工程會(huì)生成一個(gè).map 的文件,該文件的最后說(shuō)明了ROM和RAM占用空間大小,如下圖所示:

其中ROM就是程序燒錄到FLASH中的大小,RW就是占用RAM大小。
RO
RO (Read Only ): 只讀區(qū)域, 需要長(zhǎng)久保存,燒錄到Flash中,下文的text段和constdata段屬于此屬性區(qū)。
RW
RW (Read Write): 可讀可寫(xiě),通常為全局變量和靜態(tài)變量,下文中的.data段和.bss屬于RW區(qū)。
ZI
ZI (Zero Init): 沒(méi)有進(jìn)行初始化或者初始化為0,系統(tǒng)上電時(shí)會(huì)主動(dòng)把此區(qū)域數(shù)據(jù)進(jìn)行0初始化,下文的.bss段就是。另外, 可翻看Keil工具編譯的map文件,Heap和Stack區(qū)也進(jìn)行了Zero的屬性標(biāo)注, 因此,Heap和Stack也可認(rèn)為是ZI區(qū)域。
ROM與RAM數(shù)據(jù)比較
| 數(shù)據(jù)段 | 說(shuō)明 | RAM | ROM |
|---|---|---|---|
| .bss | -- | true | false |
| .data | true | true | |
| RO-data | 常量 | false | true |
| .text | -- | false | true |
| stack | 局部變量等 | true | false |
| heap | malloc | true | false |
審核編輯 黃昊宇
-
存儲(chǔ)
+關(guān)注
關(guān)注
13文章
4787瀏覽量
90056 -
ROM
+關(guān)注
關(guān)注
4文章
579瀏覽量
89067
發(fā)布評(píng)論請(qǐng)先 登錄
C語(yǔ)言中實(shí)現(xiàn)函數(shù)宏的三種方式
關(guān)于系統(tǒng)鏈接腳本的介紹
TC377配置SMU FSP時(shí),如何配置頻率參數(shù);三種模式有何區(qū)別,配置上有何區(qū)別?
CAN總線電容過(guò)大?三種解決方案來(lái)了
MEMS中的三種測(cè)溫方式
開(kāi)關(guān)電源三種控制模式:PWM/PFM/PSM
HarmonyOS基礎(chǔ)組件:Button三種類型的使用
介紹三種常見(jiàn)的MySQL高可用方案
信號(hào)隔離器三種供電方式的區(qū)別
三種存儲(chǔ)區(qū)介紹
評(píng)論