虚拟地址内存布局
?
? ? ? ? 虛擬地址內存劃分比例為3:1,用戶空間占3G,內核空間占1G。此圖的地址從上到下依次增大。最上面128M為保留區,不可訪問。接下來是.text段存放的是指令,.data段存放的是初始化但不為0的全局變量和靜態全局變量,.bss段存放的是未初始化的或者初始化為0的全局變量和靜態全局變量。heap(堆)從低地址向高地址增長,用戶手動開辟的內存就是在堆區,釋放也需要用戶手動釋放。stack(棧)從低地址向高地址增長,主要存儲局部變量等這塊內存是系統開辟和釋放的。堆和棧中間是共享庫,命令行參數存儲程序名和參數。環境變量是指系統運行一個程序,但沒有告訴它程序所在的路徑時,系統除了 在當前目錄下面尋找此程序外,還會到path中指定的路徑去找,我們可以通過設置環境變量,來更好的運行進程。ZONE_DMA :(直接內存訪問)可以加快磁盤和內存之間的數據交換,不需要經過CPU的寄存器,提高了CPU的工作效率。ZONE_NORMAL是內核中最重要最常用的部分,用于直接映射,PCB(進程控制塊)就在這里。ZONE_HIGHMEM是高端內存,用于在內核中映射高于1GB的物理內存時使用,64位操作系統沒有該段。
?
總結
- 上一篇: java date 实例_Java Da
- 下一篇: visio2013复制到word有多余白