计算机操作系统基础笔记 操作系统有哪些状态( 十 )

  • 虚拟性
    虚拟性是指能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量 。
  • 典型问题如果系统花费大量的时间把程序和数据频繁地换入和换出内存而不是执行用户指令,那么,称系统出现了抖动 。出现抖动现象时,系统显得非常繁忙,但是吞吐量很低,甚至产出为零 。
    根本原因:选择的页面或段不恰当 。
    实现方式
    1. 请求分页存储管理系统
    2. 请求分段存储管理系统
    3. 请求段页式存储管理系统
    请求分页存储管理系统请求分页存储管理方式是在纯分页系统的基础上,增加 了部分页装入、请求调页、页面置换功能 。
    实现请求页式存储管理系统,需要一定的硬件支持 。除了需要一定容量的内存和外存对换区之外,还需要请求页表机制、缺页中断机构和地址变换机构 。
    地址变换机制:
    在纯分页系统的基础上,为实现虚拟存储器增加了某些功能:
    某页在外存的情况(状态位=0),需要增加产生和处理缺 页中断、请求调页和页面置换的功能 。
    访问某页时,还应修改其访问位;对某页如果执行写操作,还应设置修改位为1 。
    1. 确定最小物理块数
      最小物理块数:是指能保证进程正常运行所需的最少物理块 数 。若系统为某进程所分配的物理块数少于此值时,进程将 无法运行 。
    2. 内存分配策略
      固定分配:指为每个进程分配固定物理块数,进程在整个运行期间不变 。局部置换:指进程运行过程中若发生缺页,只能从进程本身所拥有的物理块中选择一页换出,再调入所需页 。全局置换:指若空闲队列已空,而又发生缺页中断时,从内存空间中的任意进程所拥有的物理块中选择一页换出 。固定分配,局部置换可变分配,全局置换可变分配,局部置换
    3. 物理块分配算法
      平均分配算法按比例分配考虑优先权的分配算法(部分)
    页面调入策略
    1. 请求调页策略
      缺页中断时,由系统将所缺的页调入内存 。但每次请求 只调入一页 。优点:容易实现 。缺点:对外存I/O次数多,开销较大,容易产生抖动现象 。
    2. 预调页策略
      将预计不久之后会被访问的程序或数据所在的页面,提先调入内存 。缺页中断时,系统为进程装入指定的页面以及与之相临的多个页面 。优点:提高调页的I/O效率 。缺点:若局部性很差,预先装入的很多页面不会很快被引用,并会占用大量的内存空间,反而降低系统的效率 。预调页的成功率仅约50% 。常用于首次调入时,由程序员指出应该先调入的页面 。
    外存要分为文件区和对换区 。对换区为取得较快的速度,采用连续分配方式,且对换区所规定盘块较大 。
    1. 系统拥有足够的对换区空间,这时可以全部从对换区调入所需页面,以提高调页的速度 。
    2. 系统缺少足够的对换区空间,这时凡是不会被修改的 文件,都直接从文件区调入;
      而当换出这些页面时,由于它们未被修改而不必再将它 们重写到磁盘(换出),以后再调入时,仍从文件区直 接调入 。但对于那些可能被修改的部分,在将它们换出时,便须 调到对换区,以后需要时,再从对换区调入 。
    3. UNIX方式 。
      由于与进程有关的文件都放在文件区,故凡是未运行 过的页面,都应从文件区调入 。对于曾经运行过但又被换出的页面,由于是被放在对换区,因此在下次调入时,应从对换区调入 。
    页面置换算法把未来不再使用的或短期内较少使用的页面调出,通 常只能在局部性原理指导下依据过去的统计数据进行预测 。要避免“抖动”(Thrashing)(又称颠簸)
    1. 最佳置换算法
      选择永不再用或者在最长时间内不再被访问的页面换出 。优点:缺页率最低,性能最好 。缺点:依赖于对将来页面访问序列的了解,因此无法实 现 。所以此算法只是一 个理想的算法,或称为“目标”,只能用来评价其它算法的优劣 。
    2. 先进先出算法
      选择最先进入内存,即在内存中驻留时间最久的页面换出 。优点:实现简单;缺点:不考虑程序的动态性,与进程实际运行的规律不 相适应 。
    3. 最近最久未使用算法

      推荐阅读