1操作系统中关于页式存储原理的问题

gxgxfish0813 2002-07-03 12:22:17

页式存储管理基本原理:假定地址用M个二进制位表示,其中页内地址部分占用了N个二进制位。那么,每一个块的长度就是2的N次幂,也就是每一页有2的N次幂个字节。这时,页号部分占用了M-N位,所以,最大的作业可允许有2的(M-N)次幂个页面。
我不太明白,为什么说"每一个块的长度就是2的N次幂"这句,为什么是2的N次幂呢?越乘越大的。还有“最大的作业可允许有2的(M-N)次幂个页面”这句。谢谢。
...全文
56 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gxgxfish0813 2002-07-04
  • 打赏
  • 举报
回复
我明白了。我感觉我还是看过yansea(思宏)的回复才明白的。刚才给分有误,所以请yansea(思宏)到这个地址再说句话,另有100分送上。
http://www.csdn.net/expert/topic/848/848225.xml?temp=.2319605
http://www.csdn.net/expert/topic/846/846428.xml?temp=.5322534
Bird1945 2002-07-03
  • 打赏
  • 举报
回复
你应该注意到
int aa;
aa < 1 ;
就是把aa*2了,
一个字节表示的数据是从0 到 255 = 2^8
如果用一个字节来表示地址,那么这个字节能表示的地址范围就是0--256,
也就是这个长度是256个字节.
surfguy 2002-07-03
  • 打赏
  • 举报
回复
页面管理的地址管理机制是:页面地址 + 页内块地址 + 块内地址
( m-n ) n

( 有点象是段地址 ) + (偏移地址)



n
用n位来表示一个块的话,所能表示的最大块容量当然是 2


m-n
而页面数就是2 页了。


不知你看了这个还有没有理解。
surfguy 2002-07-03
  • 打赏
  • 举报
回复
页面管理的地址管理机制是:页面地址 + 页内块地址 + 块内地址
( m-n ) n

( 有点象是段地址 ) + (偏移地址)



n
用n位来表示一个块的话,所能表示的最大块容量当然是 2


m-n
而页面数就是2 页了。


不知你看了这个还有没有理解。
yansea 2002-07-03
  • 打赏
  • 举报
回复
不知道你是不是这个意思,我说说看好了。
是这样的吧?
windows是使用虚拟内存来实现进程独立的,就是说对于某一个确定的进程来说,它拥有windows最大的寻址范围。
以32位windows来说,2的32次方 = 4GB(0和1来标志吗),所以这是win32的最大寻址范围了。
至于虚拟地址和物理地址的对应是由系统实现的,建议你看看window操作系统原理。我只能简单说说。
32位是 0 —— 31,其中最后12位为页内地址犏移,一个内存页面是4096个字节,那么要寻址这个范围就需要2^12 = 4096就是12位了。
另外系统为每一个进程维护着一个1024大小的目录项,前10就标识的这个东西。至于中间10位也是和页目录相关的。
我记得书上说是每个页目录最多512,不过怎么想怎么不对~~~也不知道谁错了。
说的很不清楚,还是你自己去看看书吧。

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧