1. 程式人生 > >Linux 可執行文件與進程內存結構, Linux 進程內存加載

Linux 可執行文件與進程內存結構, Linux 進程內存加載

執行文件 linux 字符串 程序

一個可執行程序包含三個部分

代碼段:主要存放指令,操作以及只讀的(常量)數據(例如字符串常量)。
數據段:全局或者靜態的已經初始化的變量。
BSS 段:全局或者靜態的未初始化的變量。

技術分享

棧上面有1G內存時Linux內核區,與棧之間有一個gap隨機地址,防止代碼攻擊。數據區data與堆區之間也有一個隨機gap。


Linux 可執行文件與進程內存結構, Linux 進程內存加載