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

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

Chinaunix

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

[內(nèi)存管理] 虛擬內(nèi)存和物理內(nèi)存 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2013-03-10 16:56 |只看該作者 |倒序?yàn)g覽
大家好,最近開始了解內(nèi)存管理,有個(gè)問題很是困惑:線性地址可以通過頁表來找到物理地址,我不明白的是找到的這個(gè)物理地址是實(shí)際的數(shù)據(jù)存放的那個(gè)4K的首地址,還是找到的是相關(guān)的page結(jié)構(gòu)體的地址,然后通過page中的某個(gè)指針指向真正存放數(shù)據(jù)的4K的地址空間,或者是那個(gè)page結(jié)構(gòu)體就在那4K空間里?求大神指教....

論壇徽章:
4
丑牛
日期:2014-01-11 15:11:12亥豬
日期:2014-12-15 22:19:092015年辭舊歲徽章
日期:2015-03-03 16:54:152015年亞洲杯之約旦
日期:2015-03-13 19:45:11
2 [報(bào)告]
發(fā)表于 2013-03-10 17:31 |只看該作者
實(shí)際的數(shù)據(jù)存放的那個(gè)4K的首地址

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2013-03-10 17:55 |只看該作者
回復(fù) 2# 魔鬼的驚嘆
你的意思是page結(jié)構(gòu)體中放了4K空間的首地址?哪通過頁表加偏移得到的物理地址是那個(gè)?

   

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2013-03-10 17:58 |只看該作者
回復(fù) 2# 魔鬼的驚嘆
你的意思應(yīng)該是通過頁表加偏移找到了4K空間的首地址,對(duì)嗎?哪page結(jié)果體是如何跟這個(gè)4K空間建立關(guān)系的?page那個(gè)變量是指向這4K空間的?我初學(xué),呵呵....還請(qǐng)指教.....


   

論壇徽章:
4
酉雞
日期:2014-03-21 23:19:50獅子座
日期:2014-08-01 22:11:40酉雞
日期:2015-01-10 21:31:442015年辭舊歲徽章
日期:2015-03-03 16:54:15
5 [報(bào)告]
發(fā)表于 2013-03-10 20:16 |只看該作者
跟Page結(jié)構(gòu)體沒有任何關(guān)系!

論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2013-03-10 20:56 |只看該作者
回復(fù) 5# chishanmingshen

不是說系統(tǒng)會(huì)對(duì)內(nèi)存中的每個(gè)頁都創(chuàng)建page結(jié)構(gòu)體么,那么這個(gè)page結(jié)構(gòu)體怎么和真實(shí)的那個(gè)物理內(nèi)存進(jìn)行關(guān)聯(lián)的?
   

論壇徽章:
4
丑牛
日期:2014-01-11 15:11:12亥豬
日期:2014-12-15 22:19:092015年辭舊歲徽章
日期:2015-03-03 16:54:152015年亞洲杯之約旦
日期:2015-03-13 19:45:11
7 [報(bào)告]
發(fā)表于 2013-03-11 07:19 |只看該作者
通過頁表管理內(nèi)存,每個(gè)頁表中存放1024個(gè)頁表項(xiàng),每個(gè)頁表項(xiàng)中保存了一個(gè)4k頁面的物理基地址
我這樣說我估計(jì)你還是不太明白,我建議你找本操作系統(tǒng)的書看吧,本科的教材就可以

論壇徽章:
0
8 [報(bào)告]
發(fā)表于 2013-03-11 09:17 |只看該作者
內(nèi)核中有Page解構(gòu)體數(shù)組,數(shù)組下標(biāo)與內(nèi)存區(qū)域是有對(duì)應(yīng)的

論壇徽章:
0
9 [報(bào)告]
發(fā)表于 2013-03-11 09:45 |只看該作者
不是通過頁表來管理內(nèi)存吧,頁表這個(gè)數(shù)據(jù)結(jié)構(gòu)只是用來執(zhí)行線性地址到物理的轉(zhuǎn)換,線性地址其實(shí)只是幾個(gè)頁表索引的集合,真正的物理地址存放在頁表項(xiàng)里面; 而page結(jié)構(gòu)體才是內(nèi)核用來管理內(nèi)存的,每個(gè)物理頁框?qū)?yīng)一個(gè)page結(jié)構(gòu),伙伴系統(tǒng)就是通過page結(jié)構(gòu)來管理物理內(nèi)存的。
回復(fù) 7# 魔鬼的驚嘆


   

論壇徽章:
0
10 [報(bào)告]
發(fā)表于 2013-03-11 11:30 |只看該作者
回復(fù) 8# pangxiezhou
正解,我看到了應(yīng)該是mem_map,這個(gè)是struct page結(jié)構(gòu)體數(shù)組,其中下標(biāo)就是對(duì)應(yīng)物理頁的頁框號(hào)。這個(gè)是ULK 3 p295最后一段的介紹,而且網(wǎng)上也有很多類似的介紹,但是我在3.5.4內(nèi)核版本中試著用內(nèi)核模塊打印出mem_map的地址和它的值卻發(fā)現(xiàn)如下情況:
  1. static __init watch_map (void)
  2. {
  3.         printk ("mem_map address :%p\n", &mem_map);
  4.         printk ("mem_map value%p\n", mem_map);
  5. }
復(fù)制代碼
這個(gè)是內(nèi)核模塊代碼
結(jié)果:
  1. [  674.581516] mem_map address :c3c18900
  2. [  674.581520] mem_map value  (null)
復(fù)制代碼
也就是和所mem_map中的值為NULL
而且在3.5.4中mem_map的定義并不是一個(gè)結(jié)構(gòu)體數(shù)組,而是struct page * ,是個(gè)指針類型。
  1. 73 struct page *mem_map;
復(fù)制代碼
您需要登錄后才可以回帖 登錄 | 注冊(cè)

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

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP