Mou*_*Lin 11 operating-system memory-management virtual-memory memory-mapping
我正在阅读"现代操作系统"一书.我对"页面大小"感到困惑.
在这本书中,作者说,
传入的16位虚拟地址分为4位页码和12位偏移量.对于页码,有4位,我们可以有16页,并且对于偏移有12位,我们可以寻址页面中的所有4096 个字节.
为什么4096字节?使用12位,我们可以在页面内处理4096个条目,这是正确的.但是,一个条目是一个地址(在这种情况下,地址大小= 16位).所以我认为我们可以解决4096(条目)*16(位)= 4096(条目)*2(字节)= 8KB,但为什么书中说我们可以解决4096(字节)?
提前致谢!:)
Chr*_*odd 10
这假设字节寻址存储器(几乎每台机器在过去30年中使用),因此每个地址指的是一个字节,而不是条目或地址或任何其他更大的值.要保持16位值,您需要两个连续的地址(两个字节).
30多年前,曾经有过这样的机器,这些机器就像你猜测的那样有效.但是这样的机器在处理面向字节的数据(例如ASCII字符)时遇到了困难,因此已经失宠了.如今,字节可寻址性,8位字节和二进制补码整数之类的东西几乎就是假定的.