测验:内存管理
当页面大小为4KB时,偏移量在虚拟地址中占据多少位?
- 8 位 — 1 个字节就足够了
- 12 位 — 4096 是 2 的 12 次方,所以
- 10 位 — 基于 1024 的值
- 16 位 — 假定 64KB 页面
当TLB访问为20ns,内存访问为100ns,TLB命中率为80%时,有效访问时间是多少?
- 120纳秒
- 180纳秒
- 220纳秒
- 140纳秒
为什么要使用多级页表?
- 由于包含整个 64 位地址空间的单个表太大,因此我们尝试仅创建实际使用的分支。
- 通过减少地址转换步骤来提高TLB命中率
- 使每个进程的页面大小可变
- 通过保护连续物理内存来消除外部碎片
当内存访问为200ns,页错误处理为8ms,错误概率为0.001时,最接近有效访问时间的值是多少?
- 约220ns
- 约 1,200 纳秒
- 约 8,200 纳秒
- 约 80,000 纳秒
给定参考字符串 7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1 中的 3 个帧,哪种算法产生的页面错误最少?
- 先进先出(15次)
- LRU(12 次)
- OPT(9次)
- 三种算法都是一样的
贝拉迪的异常现象是什么?
- 即使帧数增加,页面错误实际上也会增加的现象。
- 即使 TLB 增加,命中率也会下降。
- 当页面大小增加时内部碎片减少的现象
- 即使关闭交换,性能也会恶化
在内存不足的容器中打开交换时有哪些典型症状?
- 进程立即终止,并且原因清楚地记录在日志中。
- 内存不足蔓延到网络缓冲区,导致重传迅速增加
- 页表损坏,导致频繁的分段错误。
- 进程还活着,但是响应慢了几十倍,CPU空闲,但是iowait却暴涨。