Linux下C程序的内存映像
生活随笔
收集整理的這篇文章主要介紹了
Linux下C程序的内存映像
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C程序的內存映像
- 代碼段、只讀數據段
- 數據段、bss段
- 堆
- 棧
- 文件映射區
- 內核映射區
- OS下和裸機下C程序加載執行的差異
- 項目實際體會
- 系統分配棧的大小
- 任務分配棧的大小
代碼段、只讀數據段
1.對應著程序中的代碼(函數),代碼段在Linux中又叫文本段(.text)。
2.只讀數據段就是在程序運行期間只能讀不能寫的數據,const修飾的常量有可能是存在只讀數據段(但是不一定,const常量的實現方法在不同的平臺是不一樣的)。
數據段、bss段
1.數據段存:1、顯示初始化為非零的全局變量。2、顯示初始化為非零的static局部變量。
2.Bss段存:1、顯示初始化為0或者未顯示初始化的全局變量。2、顯示初始化為0或未顯示初始化的static局部變量。
堆
1.C語言中什么樣的變量存放在堆內存中? C語言不會自動向堆中存放東西,堆的操作是程序員自己手工操作的,程序員根據需求自己判斷要不要使用堆內存,用的時候自己申請,自己使用,使用完再
總結
以上是生活随笔為你收集整理的Linux下C程序的内存映像的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: u盘启动盘不支持usb3.0是怎么回事
- 下一篇: linux 其他常用命令