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


选择最近一段时间内最久不用的页面予以淘汰 。性能接近最佳算法 。页表的访问字段,用以记录自上次访问以来所经历的时间T 。每次都选择现有页面中T值最大的页面置换 。为了记录页面使用时间的先后关系,引入硬件支持:寄存器,为每个在内存中的页面配置一个移位寄存器,当进程 访问它时,将其寄存器的最高位置1 。且定时信号每隔一 定时间将寄存器右移一位 。具有最小数值的寄存器所对应的页面,就是最近最久未使用的页面 。栈,利用栈保存当前(最近)使用的各个页面页面号 。若栈中有该页号则将其从原位置移出,压入栈顶;若栈中没有该页号且栈满,则将栈底页号对应页置换出,将新页号压入栈顶 。

  • clock置换算法(轮转算法)
    该算法只考虑某页是否已经使用过,未考虑使用的时间,称为“最近未用算法”当某页被访问时,其访问位被置为1 。置换算法寻找访问位=0的页面作为被置换页 。指针经过的访问位为1的页重新置0,最后指针停留在被置换页的下一个页 。若查找一遍后没有访问位是0的页面,则返队首 。
  • 改进:考虑置换代价 。选择换出页面时,既要是未使用过的页面,又要是未被修改过的页面 。把同时满足两条件的页面作为首选淘汰的页 。
    5. 最不常用算法
    最少使用置换算法LFU(Least Frequently Used)选择 到当前时间为止被访问次数最少的页面被置换 。
    6. 页面缓冲算法
    有效访问时间设内存读写周期为t,查找快表时间为λ,缺页中断处理时间为?,引入快表命中率为α,缺页中断率为f,则有效访问内存时间为:
    EAT=λ+αt+(1?α)[f(t+?+λ)+(1?f)(t+λ)+t]EAT=λ+αt+(1?α)[f(t+?+λ)+(1?f)(t+λ)+t]
    抖动
    1. 局部抖动
    2. 全局抖动
    产生原因:
    进程分配的物理块太少
    置换算法选择不当
    全局置换使抖动传播
    消除抖动的办法:
    采取局部置换策略
    基于工作集的物理块分配策略
    L=S准则
    挂起若干进程
    输入输出系统基本功能:
    ? 1、隐藏物理设备的细节
    ? 2、与设备的无关性
    ? 3、提供处理机和I/O设备的利用率(并行操作)
    ? 4、对I/O设备进行控制(四种控制方式)
    ? 5、确保对设备的正确共享(设备的共享属性)
    ? 6、错误处理
    总体设计目标是高效性和通用性 。
    (1)I/O设备与CPU的并发性;
    (2)简单抽象、清晰而统一的接口 。
    I/O系统接口
    1. 块设备接口
      信息的存取以数据块为单位,有结构设备 。如磁盘
    2. 流设备接口
      基本单位是字符,无结构设备 。如交互式终端、打印机 。
    3. 网络通信接口
    I/O设备和设备控制器I/O系统:用于实现数据输入、输出及数据存储的系统 。
    I/O设备类型(1)按设备的使用特性分类
    存储设备
    输入/输出设备
    (2)按传输速率分类
    低速设备
    中速设备
    高速设备
    (3)按设备的共享属性分类
    独占设备(临界资源 )
    共享设备
    虚拟设备
    设备与控制器之间的接口三种信号:
    (1)数据信号:双向,有缓存
    (2)控制信号:控制器发给设备;要求其完成相 关操作
    (3)状态信号:传送指示设备当前状态的信号;
    设备控制器设备控制器是一个可编址的设备,可控制多个设 备并为它们编址,以实现I/O设备和计算机之间的 数据交换,减轻CPU的负担 。
    设备控制器可分为控制块设备的控制器和控制字 符设备的控制器两类 。
    功能:接收CPU命令,控制I/O设备工作,解放CPU
    组成:设备控制器与处理机的接口,设备控制器与设备的接口和I/O逻辑
    I/O通道是一种特殊处理机,专门负责输入/输出工作,具有 执行I/O指令的能力 。主要目的是为了建立独立的 I/O操作,使有关对I/O操作的组织、管理及其结束 处理也独立于CPU 。
    总线系统中断机构和中断处理程序把引起中断的事件称为“中断源”
    对出现的事件进行处理的程序称为 “ 中断处理程序”
    CPU在每条指令执行周期的最后时刻扫描中断寄存器,询问是否有中断信号
    处理过程中断处理过程

    推荐阅读