C/C++程序內存分配

在這裏插入圖片描述

32bit總線可尋址2^32B地址,這是32位系統。
上面是高地址空間,下面是低地址空間。
1GB的內核空間,3GB的用戶空間。

內存空間分類(從上到下):
內核區域,棧(執行空間),存儲映射區(動態鏈接庫等文件映射,malloc調用mmap函數申請大內存),堆(動態申請的空間),BSS段(未初始化的全局變量以及靜態變量),數據段(初始化的全局變量),代碼段(包含常量字符串(只讀)和二進制代碼)。

分類方式不同有很多分法,這是比較全面的,很多時候容易把BSS和數據段合併,忽略掉存儲映射區。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章