如何判断两个地址是否在同一个页面文件中?
涉及什么数学以及如何判断两个地址是否位于同一个 4 KB 页中?
What math is involved and how do I tell if two addresses are in the same 4 kilobyte page?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好吧,假设 4 KiB 页面,
这很快就会变得丑陋,因为页面在常见架构上具有可变大小,并且特定内存区域的页面大小可以并且将会由操作系统根据应用程序内存使用模式动态更改。
(请注意,内存页是虚拟内存,而不是物理内存。严格来说,谈论物理页是没有意义的,尽管当有人说“物理页”时我们通常会理解页”,它们的意思是“对应于一页的物理内存”。)
Well, assuming 4 KiB pages,
This will get ugly quickly since pages have a variable size on common architectures, and the page size of a particular region of memory can and will be changed by the operating system on the fly depending on application memory usage patters.
(Note that memory pages are virtual memory and not physical memory. Strictly speaking, it does not make sense to talk about physical pages, although we usually understand when someone says "physical page" they mean "physical memory corresponding to a page".)