公式
- 逻辑地址=\(页号P+偏移量W\)
- 物理地址=\(某程序指定页的块号+偏移量W\)
- 页表项 =\((题目给出的)内存 / 页面大小\)
- 页表占用内存 = \(页表项 * 页表大小\)
- 页数=\((页表占用的)内存 / 页面大小 = (页表项 * 页表项大小)/ 页面大小\)
- 每页页表项数=\(页表项 / 页数 = 页面大小 / 页表项大小\)
- 最大内存 =$ 页面大小 * 2^(页表项大小 /B)$
- 每页页表项数=\(页表项 / 页数 = 页面大小 / 页表项大小\)
例题:
页式存储(清华大学)
已知系统为32位实地址,采用48位虚拟地址,页面大小4KB,页表项大小为8B;每段最大为4GB。
(1)假设系统使用纯页式存储,则要采用多少级页表,页内偏移多少位?
(2)假设系统采用一级页表,TLB命中率为98%,TLB访问时间为10ns,内存访问时间为100ns,并假设当TLB访问失败后才访问内存,问平均页面访问时间是多少?
(3)如果是二级页表,页面平均访问时间是多少?
(4)上题中,如果要满足访问时间<=120ns,那么命中率需要至少多少?