從進程地址空間分佈到緩衝區溢出

進程的地址空間 一個進程的空間分佈大致如上圖所示,主要由數據段、代碼段、堆、棧這幾部分組成,其中代碼段(.code)主要存放程序代碼在內存中的映射;數據段具體會分爲初始化數據段(.data)和爲初始化數據段(.bss);而堆主要用於存放局部變量、臨時變量,函數調用時,存放函數的返回指針,用於控制函數的調用和返回;堆用於存儲動態內存分配,需要手動分配,手動釋放,比如我們常見的malloc()函數產生
相關文章
相關標籤/搜索