亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2329 | 回復(fù): 6
打印 上一主題 下一主題

[內(nèi)存管理] 高端內(nèi)存疑惑 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2012-08-31 10:22 |只看該作者 |倒序瀏覽
如果物理內(nèi)存達(dá)到4G,那么從896~4G的高端內(nèi)存只能用內(nèi)核128m的線性地址訪問,那么用戶空間就不能訪問這么大的高端內(nèi)存了嗎?
這樣是不是有點(diǎn)浪費(fèi)???

論壇徽章:
0
2 [報告]
發(fā)表于 2012-08-31 10:58 |只看該作者
回復(fù) 1# f22jay
建議lz看看何為normal page, 何為high memory。以最簡單的用戶態(tài)的malloc的內(nèi)存分配函數(shù)而言,其簡單的分配流程為:
1. malloc查看當(dāng)之前brk出來(這里是說小塊內(nèi)存分配)的內(nèi)存是否夠malloc請求。如果不夠,然后brk進(jìn)kernel,增長堆。
2. brk只是分配了virtual address,并無實(shí)際內(nèi)存分配。然后再application 訪問malloc出來的內(nèi)存地址時,發(fā)生缺頁中斷,進(jìn)入系統(tǒng)的缺頁處理。
3. 在page fault中,系統(tǒng)會分配實(shí)際內(nèi)存。最終會調(diào)到page_alloc_vma,而是用的標(biāo)志位 GFP_HIGHUSER(不知道是否是這樣拼的), 將其展開,里面就包含了GFP_HIGHMEM。因此優(yōu)先會從high memory進(jìn)行分配。

論壇徽章:
0
3 [報告]
發(fā)表于 2012-09-01 14:50 |只看該作者
本帖最后由 f22jay 于 2012-09-01 14:51 編輯

s  回復(fù) 2# George_lz

你的意思是說用戶空間的3g線性地址也可以映射高端內(nèi)存嗎?我一直以為只有內(nèi)核空間的最后128m是專門用來映射高端內(nèi)存的。如果是這樣就好理解了。3k


   

論壇徽章:
2
CU大;照
日期:2013-04-17 11:46:28CU大;照
日期:2013-04-17 11:46:39
4 [報告]
發(fā)表于 2012-09-01 14:53 |只看該作者
f22jay 發(fā)表于 2012-08-31 10:22
如果物理內(nèi)存達(dá)到4G,那么從896~4G的高端內(nèi)存只能用內(nèi)核128m的線性地址訪問,那么用戶空間就不能訪問這么大 ...


哪個地方看出的?

論壇徽章:
0
5 [報告]
發(fā)表于 2012-09-01 15:00 |只看該作者
回復(fù) 4# cdtits
我看高端內(nèi)存映射部分,沒發(fā)現(xiàn)用戶空間可以映射,都是內(nèi)核空間最后128m映射的,所以疑惑,請大神指教。。

   

論壇徽章:
0
6 [報告]
發(fā)表于 2012-10-19 11:56 |只看該作者
本帖最后由 TianCheng205 于 2012-10-30 13:53 編輯

請深入理解高端映射的實(shí)現(xiàn),如何讓1G的內(nèi)核線性空間和所有的物理內(nèi)存(超過1G)建立映射?另外為什么要將所有盡可能多的物理內(nèi)存映射到內(nèi)核線性空間了?為什么不將內(nèi)核線性空間設(shè)為2G?

論壇徽章:
1
拜羊年徽章
日期:2015-03-03 16:15:43
7 [報告]
發(fā)表于 2012-10-19 20:23 |只看該作者
本帖最后由 linuxfellow 于 2012-10-19 20:26 編輯

回復(fù) 5# f22jay
兩個概念不要搞混了:
高端內(nèi)存:物理頁面的范疇。內(nèi)存的物理頁面被分為ZONE_DMA/ZONE_NORMAL/ZONE_HIGH. 高端內(nèi)存是指其中的ZONE_HIGH
128M是指內(nèi)核虛擬地址空間中VMALLOC_START到VMALLOC_END之間的虛擬地址,這部分地址只有內(nèi)核自己能使用。
128M線性地址只有內(nèi)核能使用,這是沒錯,內(nèi)核用這段地址可以映射的ZONE_HIGH區(qū)域的物理頁面,當(dāng)然也可以映射到其他IO memory去
用戶程序也可以從ZONE_HIGH申請物理頁面,當(dāng)然不能用內(nèi)核的128M(VMALLOC_START到VMALLOC_END)間的線性地址。 而是用0~3G間申請到的某個VMA的線性地址,通過get_free_pages(GFP_HIGH)來從ZONE_HIGH中申請頁面

這就和財務(wù)報銷一樣,雖然最后都是從一個賬號下花錢,但報銷的名目是不一樣的
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP