Pan*_*ato 11 paging operating-system
我找到了这个例子.
考虑具有32位逻辑地址空间的系统.如果此类系统中的页面大小为4 KB(2 ^ 12),则页表可能包含最多100万个条目(2 ^ 32/2 ^ 12).假设 每个条目由4个字节组成,每个进程可能只需要4 MB的物理地址空间.
每个条目的含义是4个字节,为什么每个进程可能需要最多4 MB的页表空间物理地址空间?
页表是从虚拟地址到物理地址的转换表,操作系统使用它来人为地增加系统中可用的主内存总量.
物理内存是位于内存(DRAM)中的地址的实际位,虚拟内存是操作系统所处的位置,用于告诉它们所处的位置,以便执行诸如允许2 ^ 64位地址空间之类的操作,尽管事实上^ 34位是通常使用的最大RAM.(2 ^ 32位是4千兆字节,因此2 ^ 34是16 GB.)每个进程的大多数默认页表大小为4096 kb,但如果进程需要更多进程空间,则页表条目的数量可能会增加.页表大小最初也可以分配更小或更大的数量或内存,只需4 kb通常是大多数进程的最佳大小.
请注意,页表是页面条目表.两者都可以有不同的大小,但页表大小最常见的是4096 kb或4 mb,并且通过添加更多条目来增加页表大小.
小智 8
至于为什么一个PTE(页表条目)是4个字节:
几个答案说这是因为地址空间是 32 位,而 PTE 需要 32 位来保存地址。
但是 PTE 不包含一个字节的完整地址,只包含物理页号。其余位包含标志或未使用。它不需要正好是 4 个字节。
| 归档时间: |
|
| 查看次数: |
29433 次 |
| 最近记录: |