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

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

Chinaunix

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

虛擬內(nèi)存中的交換功能是否已經(jīng)過時? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2009-12-28 13:30 |只看該作者 |倒序瀏覽
Chuck Thacker在“五個軟件思想將很快過時”的文章中提到,第一個過時的軟件思想是虛擬內(nèi)存(Virtual Memory)。提出虛擬內(nèi)存的最初原因是真實內(nèi)存價格比較高,只好采用在硬盤上開辟某一塊空間作為虛擬的內(nèi)存。但由于硬盤速度所限,虛擬內(nèi)存的速度遠(yuǎn)遠(yuǎn)不如真實內(nèi)存。但隨著內(nèi)存價格的大大降低,虛擬內(nèi)存失去了主要作用,同時,因為硬盤速度成為整個系統(tǒng)的瓶頸,也導(dǎo)致虛擬內(nèi)存成了“雞肋”。

個人感覺linux內(nèi)核中頁面交換相關(guān)的部分是比較難理解的地方,若能去掉對頁面交換的支持,那么將大大簡化內(nèi)存管理模塊的設(shè)計,比如說:一個物理頁有可能被多個進(jìn)程共享,當(dāng)該物理頁被換出到磁盤時,操作系統(tǒng)需要找到共享該物理頁的所有的頁表項,把頁表項的present位清空。

在linux 2.4之前的版本中,為了找到共享某個物理頁的所有的頁表項,linux內(nèi)核需要遍歷每個進(jìn)程的頁表,在linux 2.4之后的版本中引入了反向映射,內(nèi)存管理模塊為每一個物理頁建立了一個鏈表,記錄了共享該物理頁的進(jìn)程的頁表項,這種方案提高了交換頁面算法的效率,但是在很大程度上復(fù)雜了內(nèi)存管理模塊的設(shè)計,內(nèi)存管理模塊必須小心翼翼的維護(hù)物理頁和頁表項之間的正向、反向的映射關(guān)系,linux一直到2.5版本才引入反向映射的算法,可以看出維護(hù)反向映射是一件比較復(fù)雜的事情。

論壇徽章:
0
2 [報告]
發(fā)表于 2009-12-28 15:24 |只看該作者
交換功能應(yīng)該不會過時,因為有mmap的需求

論壇徽章:
0
3 [報告]
發(fā)表于 2009-12-28 15:26 |只看該作者
不做交換的話,如果我分配N G內(nèi)存怎么辦?資源總是有限的阿,總要有個辦法吧

論壇徽章:
0
4 [報告]
發(fā)表于 2009-12-28 15:41 |只看該作者
內(nèi)存足夠大的話,確實可以swapoff。 ssd的普及,將使得內(nèi)存和硬盤的區(qū)別越來越。ㄌ貏e期望直接掛在北橋的 ssd硬盤, 而不是掛在南橋的SATA controller上)

還有, ssd的普及, 對傳統(tǒng)os技術(shù)的第一沖擊是:page cache。

論壇徽章:
0
5 [報告]
發(fā)表于 2009-12-28 17:28 |只看該作者

回復(fù) #4 albcamus 的帖子

swapoff? ACPI S4怎么辦?

論壇徽章:
0
6 [報告]
發(fā)表于 2009-12-28 17:36 |只看該作者
>> 不做交換的話,如果我分配N G內(nèi)存怎么辦?資源總是有限的阿,總要有個辦法吧
如果系統(tǒng)使用了過多的交換空間,性能就無法接受了。多年以前在一臺只有64M內(nèi)存的老機(jī)器上運(yùn)行過Linux,僅僅運(yùn)行些簡單的控制臺程序系統(tǒng)還是很順暢的,但當(dāng)我嘗試啟動X的時候,硬盤就開始狂閃,等了好幾分鐘還是黑屏。換了一臺有128M內(nèi)存的筆記本運(yùn)行同樣版本的Linux,啟動X的速度基本可以接受了。

從這個例子可以看出,當(dāng)用了一倍物理內(nèi)存左右的交換分區(qū)的時候,系統(tǒng)性能下降的很厲害,因此在基本不降低效率的情況下,交換功能最多可以模擬出一倍左右的物理內(nèi)存,再多就沒有意義了。

>> 還有, ssd的普及, 對傳統(tǒng)os技術(shù)的第一沖擊是:page cache。
對。不過,當(dāng)ssd性能和價格接近內(nèi)存的時候,內(nèi)存還有存在的必要嗎?

論壇徽章:
0
7 [報告]
發(fā)表于 2009-12-28 17:38 |只看該作者
原帖由 b4fan 于 2009-12-28 13:30 發(fā)表
個人感覺linux內(nèi)核中頁面交換相關(guān)的部分是比較難理解的地方,若能去掉對頁面交換的支持,那么將大大簡化內(nèi)存管理模塊的設(shè)計,比如說:一個物理頁有可能被多個進(jìn)程共享,當(dāng)該物理頁被換出到磁盤時,操作系統(tǒng)需要找到共享該物理頁的所有的頁表項,把頁表項的present位清空。 ...


我覺得如果linux內(nèi)核把swap功能去掉并不能帶來多大的簡化。 頁面交換和文件讀寫的實現(xiàn)是很類似,去掉swap僅僅只能減少一些分支,并不能“大大簡化”。
比如你舉的例子,就算沒有swap,內(nèi)核為了實現(xiàn)磁盤文件的讀寫,還是得保留這么一套機(jī)制。

論壇徽章:
0
8 [報告]
發(fā)表于 2009-12-28 22:53 |只看該作者
原帖由 qtdszws 于 2009-12-28 15:24 發(fā)表
交換功能應(yīng)該不會過時,因為有mmap的需求



mmap與交換關(guān)系不大吧,只有通過mmap映射的匿名頁才會與交換有關(guān)系吧

>>提出虛擬內(nèi)存的最初原因是真實內(nèi)存價格比較高,只好采用在硬盤上開辟某一塊空間作為虛擬的內(nèi)存。
虛擬內(nèi)存除了這個原因外,對于當(dāng)今系統(tǒng),為所有進(jìn)程提供統(tǒng)一的用戶虛存空間,這點(diǎn)更重要吧,而交換的作用已經(jīng)比較弱了吧

>>但由于硬盤速度所限,虛擬內(nèi)存的速度遠(yuǎn)遠(yuǎn)不如真實內(nèi)存。但隨著內(nèi)存價格的大大降低,虛擬內(nèi)存失去了主要作用,同時,因為硬盤速度成為整個系統(tǒng)的瓶頸,也導(dǎo)致虛擬內(nèi)存成了“雞肋”。

用上ssd,這句話的條件還有效嗎?

論壇徽章:
0
9 [報告]
發(fā)表于 2009-12-28 23:41 |只看該作者
看具體的應(yīng)用環(huán)境吧~

當(dāng)實際內(nèi)存比所需要的內(nèi)存少時虛擬內(nèi)存還是有作用的~

不過虛擬內(nèi)存隨著內(nèi)存的進(jìn)步而變化~ 說不定以后L1 L2才叫內(nèi)存~ 而現(xiàn)在的主存變成了外部存儲設(shè)備充當(dāng)虛擬內(nèi)存~ 哈哈~

論壇徽章:
0
10 [報告]
發(fā)表于 2009-12-29 00:27 |只看該作者
支持3L, 7L
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(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