首页 > 解决方案 > 了解页面大小

问题描述

问题指出,“物理内存由 64 个字节组成,分为 16 个字节的页面。同样,虚拟地址空间也是 64 个字节。”

它还指出,“每个页表都将被放置在模拟内存中自己的页中[我们正在使用一个字符数组作为我们的物理内存]数组。”

最后,一次最多只能运行 4 个进程,因此需要四个页表。

我不明白的是,如果物理内存只有 64 个字节并且每个页表应该占用 16 个字节,那么是否没有剩余空间来存储有关进程或来自进程的任何信息?

标签: memory-managementoperating-systemvirtual-address-space

解决方案


你正在处理一个完全荒谬的问题。不幸的是,操作系统教科书和教授似乎一心想将计算机科学的简单化为混乱。

如果虚拟地址空间是 64 字节,而页面是 16 字节,那么地址空间(和物理地址空间)中只有 4 个页面。因此,每个页表条目中只需要 2 位(在这种不切实际的情况下)。页表最多一个字节。

这种问题会导致很多误解。例如,页表不需要覆盖虚拟地址空间的整个范围。


推荐阅读