但是, 在该时间段内, CPU正在执行的线程的一部分必须存在于主存储器中。页表还必须一直存在于主存储器中, 因为它具有所有页的条目。
页表的大小取决于表中条目的数量以及一个条目中存储的字节数。
考虑一下
Logical Address = 24 bits
Logical Address space = 2 ^ 24 bytes
Let's say, Page size = 4 KB = 2 ^ 12 Bytes
Page offset = 12
Number of bits in a page = Logical Address - Page Offset = 24 - 12 = 12 bits
Number of pages = 2 ^ 12 = 2 X 2 X 10 ^ 10 = 4 KB
Let's say, Page table entry = 1 Byte
Therefore, the size of the page table = 4 KB X 1 Byte = 4 KB
在这里, 我们很幸运地使页表大小等于框架大小。现在, 页表将被简单地存储在主存储器的其中一个帧中。 CPU维护一个包含该帧的基址的寄存器, 逻辑地址中的每个页码将首先添加到该基址, 以便我们可以访问被询问单词的实际位置。
但是, 在某些情况下, 页表大小和框架大小可能不相同。在这些情况下, 页表被视为框架的集合, 并将存储在不同的框架中。
评论前必须登录!
注册