页面大小和页表项之间有必然的联系么?【转】
生活随笔
收集整理的這篇文章主要介紹了
页面大小和页表项之间有必然的联系么?【转】
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
轉(zhuǎn)自:https://zhidao.baidu.com/question/335974047.html
如果一個(gè)頁(yè)面的大小為4K,頁(yè)表項(xiàng)大小為4B,那么為什么可以存2^10個(gè)頁(yè)表項(xiàng)?我的意思就是問(wèn)為什么要拿4K/4B=2^10?頁(yè)表項(xiàng)不應(yīng)該是存在于內(nèi)存里面的?和頁(yè)面大小有什么關(guān)系? ? Mr_無(wú)所不知 | 瀏覽 13070 次 |舉報(bào) 我有更好的答案 推薦于2017-11-02 20:44:25 最佳答案 理解這樣一個(gè)概念,操作系統(tǒng)為了方便管理內(nèi)存,將內(nèi)存劃分成很若干個(gè)頁(yè),每個(gè)頁(yè)表項(xiàng)就代表一個(gè)頁(yè)的地址(頁(yè)的地址,不是內(nèi)存地址)。4B大小的頁(yè)表項(xiàng),意味著支持最大的頁(yè)表數(shù)是2的32次方=4294967296 (4B=32bit),一個(gè)頁(yè)的大小4K,那么4B大小的頁(yè)表項(xiàng),表示操作系統(tǒng)支持4294967296*4K = 16GB大的內(nèi)存。
現(xiàn)在問(wèn)題是頁(yè)表占用一定的內(nèi)存。
現(xiàn)在假設(shè)有2GB(一定要小于16GB)內(nèi)存。
那么它一共有2GB/4KB=512K個(gè)頁(yè),也就是說(shuō)頁(yè)表項(xiàng)有512K項(xiàng),而每個(gè)頁(yè)表項(xiàng)的大小4B,那么頁(yè)表在內(nèi)存中占用的大小是:512K*4B=2MB,意味著,只要2MB就可以表示512K個(gè)頁(yè)(每個(gè)頁(yè)是4KB,總內(nèi)存大小是2G),它頁(yè)表本身占用了2MB/4K=512個(gè)頁(yè)。
這一題 就是問(wèn)你1個(gè)頁(yè)可以表示多少個(gè)頁(yè)表項(xiàng),4KB/4B=1024個(gè)頁(yè)表項(xiàng)。頁(yè)面大小與頁(yè)表項(xiàng)沒(méi)有絕對(duì)的關(guān)系,但它們有這樣關(guān)系:
1.頁(yè)面大小 * 2 ^(頁(yè)表項(xiàng)大小)=操作系統(tǒng)最大支持內(nèi)存大小(虛擬內(nèi)存),本題是 4K * 2^(4B) = 16GB
2.頁(yè)表占用內(nèi)存 = 操作系統(tǒng)內(nèi)存/頁(yè)面大小 * 頁(yè)表項(xiàng)大小,本題是,假設(shè)操作系統(tǒng)內(nèi)存為2GB。 2GB/4KB*4B = 2MB
3.頁(yè)表占用的頁(yè)數(shù)是=頁(yè)表占用內(nèi)存/頁(yè)面大小,這題同上假設(shè)2MB/4K=512個(gè)頁(yè)。
轉(zhuǎn)載于:https://www.cnblogs.com/sky-heaven/p/8144193.html
總結(jié)
以上是生活随笔為你收集整理的页面大小和页表项之间有必然的联系么?【转】的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 工作总结 Rezor 里面的一些小知识-
- 下一篇: spring-boot(二)