操作系统:内存管理

137 阅读2分钟

程序执行步骤

  • 预处理
  • 编译
  • 链接
  • 装入

内存的连续分配管理方式

  • 单一连续分配
  • 固定分区分配
  • 动态分区分配

内存的动态分区分配算法

  • 首次适应算法:最好最快
  • 循环首次适应算法
  • 最佳适应算法
  • 最坏适应算法

内存的非连续分配管理方式

  • 分页存储管理方式
  • 分段存储管理方式
  • 段页式存储管理方式

基本分页存储管理方式基本概念

  • 页:进程中的页
  • 页框:内存中的页
  • 块:外存中的页
  • 页表:实现页号到(内存中)物理块号的地址映射
    • 每个进程都有一张自己的页表
    • 页表存放在内存中
    • 若干页表项做成
  • 快表:存放部分页表项
    • 又称:相连存储器(TLB)
    • 基于局部性原理
    • 高命中率
  • 逻辑地址结构
    • 页号+页内偏移量

分段存储管理方式

  • 逻辑地址结构:段号+段内偏移量
  • 段表:段号 + 段长 + 本段在主存中的位置

段页式存储管理方式

  • 逻辑地址结构:段号 + 页号 + 页内偏移量

虚存管理方式

  • 请求分页
  • 请求分段
  • 请求段页式

请求分页管理方式

  • 在基本分页基础上,增加了请求调页和页面置换

  • 缺页中断

  • 页面置换算法

    • 最佳置换算法 OPT
      • 无法实现
    • 先进先出置换算法 FIFO
      • BELADY异常:随着分配物理块数的增加,页故障数不减反增。
    • 最近最久未使用置换算法 LRU
      • 性能较好
    • 时钟置换算法
      • 使用位
      • 修改位
  • 页面分配策略

    • 固定分配局部置换。
    • 可变分配全局置换。
    • 可变分配局部置换。
  • 抖动:

    • 刚换出的页面又马上要换入。
    • 原因:进程频繁访问的页面数高于可用数目。