计算机操作系统基础笔记( 九 )


• 分页的用户程序地址空间是一维的,是单一线性 空间;• 分段的用户程序地址空间是二维的 。

  • 分页是为了提高内存利用率,或者说是系统管理的需要 。分段是为了更好地满足用户需求 。
  • 分页,用户不关心,页的长度由机器地址结构 。分段,用户或编辑程序确定,段的最大长度由位移量字段的位数决定 。
  • Δ" role="presentation" style="box-sizing: border-box; position: relative;">ΔΔ信息共享分页系统实现段的共享比较困难
    分段易于实现段的共享和段的保护
    分段的共享是通过两个作业段表的相应表目都指向 COS过程的同一物理副本来实现的
    段页式存储管理方式
    1. 分页管理内存管理效率高
      没有外零头内零头小
    2. 分段管理符合模块化思想
      每个分段都具备完整的功能方便代码共享、保护
    原理:分段和分页相结合 。
    内存划分:按页式存储管理方案 。
    内存分配:以页为单位进行离散分配 。
    由于段页式系统给作业地址空间增加了另一级结构,现在 地址空间是由段号S、段内页号P和页内相对地址(位移量 )W构成 。
    地址变换:
    设置段表、段内页表
    ① 首先,从段表寄存器从获得进程段表的起始地址,根据该地址,查找进程的段表 。
    ② 然后,根据逻辑地址指定的段号检索段表,找到对应段的页表起始地址 。
    ③ 再根据逻辑地址中指定的页号检索该页表,找到对应页所在的物理块号 。
    ④ 最后,用物理块号加上逻辑地址中指定的页内偏移量,形成物理地址 。
    一个段就是一个页表
    在段页式存储管理方式中,每访问一 次数据,需访问三次内存 。
    第一次访问内存中的段表
    第二次访问内存中的页表
    第三次访问相应数据 。大大降低了访问速度 。
    解决方法: 可以设置快表,表项应包括段号、页号、物理 块号 。
    综合了分段和分页技术的优点,既能有效地利用存储空间,又能方便用户进行程序设计 。
    但是,实现段页式存储管理系统需要增加硬件成本,系统的复杂度和管理开销也大大增加 。
    因此,段页式存储管理技术适合于大、中型计算机系统,不太适合小型、微型计算机系统 。
    如何提高内存利用率离散分配、对换机制、动态链接、虚拟存储器、存储器共享
    虚拟存储器物理上扩充内存:
    增加硬件投入,收机器自身和成本的限制
    从逻辑上扩充内存:
    对换技术(解决了“驻留性”问题)
    覆盖技术(解决了“一次性”问题)
    虚拟存储器技术(依据程序执行的局部性原理)
    程序的执行总是局部性的,表现在时间局部性和空间局部性
    定义虚拟存储器:是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统 。
    限制
    1. 指令中地址的字长
    2. 外存的容量(对换区)
    特征
    1. 多次性
      多次性是指一个作业被分成多次调入内存运行 。
    2. 对换性
      虚拟性是以多次性和对换性为基础的;而多次性和对换性又必须建立在离散分配的基础上 。
    3. 虚拟性
      虚拟性是指能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量 。
    典型问题如果系统花费大量的时间把程序和数据频繁地换入和换出内存而不是执行用户指令,那么,称系统出现了抖动 。出现抖动现象时,系统显得非常繁忙,但是吞吐量很低,甚至产出为零 。
    根本原因:选择的页面或段不恰当 。
    实现方式
    1. 请求分页存储管理系统
    2. 请求分段存储管理系统
    3. 请求段页式存储管理系统
    请求分页存储管理系统请求分页存储管理方式是在纯分页系统的基础上,增加 了部分页装入、请求调页、页面置换功能 。
    实现请求页式存储管理系统,需要一定的硬件支持 。除了需要一定容量的内存和外存对换区之外,还需要请求页表机制、缺页中断机构和地址变换机构 。
    地址变换机制:
    在纯分页系统的基础上,为实现虚拟存储器增加了某些功能:
    某页在外存的情况(状态位=0),需要增加产生和处理缺 页中断、请求调页和页面置换的功能 。


    推荐阅读