typora/note/操作系统/超越物理内存.md
2024-12-12 10:48:55 +08:00

1.5 KiB

1. 交换空间

  • 在硬盘上开辟一部分空间用于物理页的移入和移出
  • 操作系统需要记住给定页的硬盘地址

2. 操作系统替换内存策略

内存相当于系统虚拟内存页的缓存

目标:

  1. 减少缓存未命中情况,使得从磁盘获取页的次数最少
  2. 让缓存命中最多,即在内存中找到虚拟页的次数更多
  • 最优替换策略:替换最远将来才会使用到的内存页,可以打到缓存未命中率最低
  • 简单策略 FIFO
  • 随机策略 random
  • 利用历史数据 LRU LFU

程序局部性

  • 空间局部性:如果页 P 被访问,可能围绕着他的页 P-1 或 P+1也会被访问

  • 时间局部性:近期被访问过的页可能在不就的将来还会被访问

2.1 FIFO

  • 先入先出替换策略
  • 页在进入系统时,简单地放入一个队列。当发生替换时,队列尾部的页(“先入”页)被踢出
  • 优势:实现相当简单
  • 缺点:命中率低

2.2 随机策略

  • 内存满的时候它随机选择一个页进行替换

2.3 LRU & LFU

  • Last Recently Used 替换最近最少使用的页面
  • Least Frequently Used 会替换最不经常使用的页
  • 某个程序在过去访问过某个页,则很有可能在不久的将来会再次访问该页

2.4 近似 LRU

  • 不会精确的扫描页表中,最近最少的页面
  • 通过硬件存储标志位,利用时钟周期来进行查找
  • 最差的情况是遍历一次内存