4 存储器管理(下)

      1. 动态可重定位分区分配
        1. 紧凑
        2. 动态重定位
        3. 动态重定位分区分配算法 (增加了紧凑功能)
  1. 对换

    1. 对换类型:

      1. 整体对换(进程对换,处理机的中级调度)

        必须实现:对换空间管理、进程换出、进程换入

      2. 页面(分段)对换(部分对换,虚拟存储器管理)

    2. 磁盘空间分为文件区和对换区

    3. 对换空间的分配与回收

      兑换分区采用连续分配方式,算法同动态分区方式(ff cff bf wf)

    4. 进程的换出与换入

      1. 换出
      2. 换入(“就绪”状态但已换出的进程)
    5. 离散分配:一个进程直接分散的装入到许多不相邻接的分区中,无需紧凑

      1. 类型:
        1. 分页存储管理
        2. 分段存储管理
        3. 段页式存储管理
  2. 分页存储管理

    1. 页面和物理块

    2. 基本原理:

      1)内存被划分为大小固定相等的块(Frame帧、页框、主存块),且块相对比较小

      2)每个进程装入时被分成同样大小的页(Page),一页装入一帧

      3)整个进程被离散装入到多个不连续的帧

    3. 地址结构:页号P + 位移量W

    4. 位示图:整个系统一张,记录内存使用情况

    5. 数据结构:页表(PT):能在内存中找到每个页面对应的物理块,页表中登记进程各页面对应的帧号,供地址映射使用

    6. 页面分配算法

    7. 地址划分: 页号(高端地址部分)+ 页内的偏移量(低端地址部分)

    8. 地址变换机构

      1. 逻辑地址变换为内存空间中的物理地址

      2. 页表功能是由一组专门的寄存器来实现的

      3. 具有快表的地址变换机构-为了提高地址转换速度

        a)在一般的分页管理系统中,处理机每次读出/写入一个数据,需要访问( 2 )次内存;而在分区存储管理系统中,需要访问( 1)次内存。

        b)在一般的分页管理系统中,执行一条一地址指令,需要访问( 3)次内存;执行一条三地址指令,需要访问( 6)次内存。

        1. 快表:存储在高速缓存
        2. 快表:内容为页表中最近使用的页表项
    9. 访问内存的有效时间:从进程发出指定逻辑地址的访问请求,经过地址变换,到在内存中找到对应的实际物理地址单元并取出数据,花费的总时间成为内存的有效访问时间(ETA)

      1. 无快表:EAT = t + t = 2t

      2. 有快表:EAT = p*t1 + (t2 + t1) * (1-p) + t2 = 2t2 + t1 - t2 * p

        (t1:查找快表需要时间 p:命中率 t2:访问一次内存需要时间)

      3. 有效访存时间 = 地址转换时间 + 读写一个页面的时间

        地址转换时间 = 访问一次快表或者页表的时间

        读写一个页面的时间 = 访问一次内存的时间

        访问一次快表的时间 = 访问一次快存的时间

        访问一次页表的时间 = 访问一次内存的时间

      4. 平均内存有效访问时间T:

        T = p * (t1 + t2) + (1 - p) * (t1 + 2t2)

    10. 两级和多级页表

    11. 反置页表:为每一个物理块设置一个页表项

  3. 分段存储管理方式

    1. 段是进程的一个组成部分
    2. 代码段 数据段 堆栈段 内存共享段
    3. 一段占用一块连续存储区
    4. 各段占用不连续分区
    5. 特点:
      1. 方便编程 2. 信息共享 3. 信息保护 4. 动态增长 5. 动态链接
    6. 基本原理:
      1. 分段:各段长度不等
      2. 逻辑地址:段号 + 段内地址
      3. 段表ST:段号 + 段长 + 基址
  4. 分页分段

    1. 相同点:离散分配 采用地址映射机构实现地址转换

    2. 区别:

      1. 信息单位:

        页是信息的物理单位 段是信息的逻辑单位

      2. 划分:

        页的页面大小固定 段的长度不固定

      3. 地址维度:

        分页:用户程序地址空间是一维的

        分段:用户程序地址空间是二维的

      分页存储管理方式分段存储管理方式
      将程序分成固定大小的页将程序分成不同的段
      OS负责实现编译器负责实现
      速度快速度比分页慢
      针对OS针对用户
      有内部碎片有外部碎片
      逻辑地址分为页号和页内偏移量逻辑地址分为段号和段偏移量
      页表段表
  5. 段页式存储管理

    先将用户程度分成若干个段,再把每个段分成若干个页

    1. 地址结构:段号 + 段内页号 + 页内地址
    2. 段表 + 页表

注意!!!!:先看4 存储器管理(上)

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cwn_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值