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