美文网首页
13.I/O系统

13.I/O系统

作者: 三半俊秀 | 来源:发表于2017-12-13 21:12 被阅读0次

    I/O基本概念

    • I/O系统的主要对象:I/O设备和对应的设备控制器
    • I/O系统的主要任务
      • 完成用户提出的I/O请求
      • 提高I/O速率
      • 改善I/O设备的利用率
    • I/O系统的基本功能
      • 隐藏物理设备的细节
      • 与设备的无关性
      • 提高处理机和I/O设备的利用率
      • 对I/O设备进行控制
      • 确保对设备的正确共享
      • 错误处理
    • 设备独立性:应用程序独立于具体使用的物理设备
      • 在应用程序中使用逻辑设备名来请求使用某类设备
    • I/O系统的核心是I/O管理和控制
    • I/O应用接口
      • I/系统调用 将设备的行为 封装成一些通用类型
      • 设备驱动层对内核隐藏了I/O控制器的不同细节
      • 设备在许多方面有很大差异

    I/O控制方式

    • 对I/O设备的控制方式
      • 使用轮询的可编程I/O方式(基本不用)
      • 使用中断的可编程I/O方式(广泛采用)
        • 可使CPU与I/O设备并行工作
      • 直接存储器访问(DMA)方式
      • I/O通道控制方式
    • 使用轮询的可编程I/O方式
      • CPU定时发出询问,询问设别是否忙,进程进入忙等
      • 不忙就进行I/O,否则转第一步
    • 中断机制
      • CPU执行完每一条指令后,检测IRL(CPU硬件中一根中断请求线)
      • 若检测到信号,CPU保存当前状态,跳转到中断处理程序
      • 执行中断处理程序
      • 执行完后,清除中断,返回。
    • 中断
      • 中断interrupt是CPU对I/O设备发来中断信号的一种响应;陷入trap是CPU内部事件所引起的中断
      • 中断向量表:每个设备的中断处理程序的入口地址等组成的表
      • 中断优先级
      • 中断源:引起中断的事件
    • 直接存储器访问(DMA)方式:绕过CPU,直接在I/O设备和内存之间传输数据

    I/O内核子系统

    • 缓冲:几乎所有I/O设备在于CPU交换数据时,都用了缓冲区
      • 缓冲区是一个存储区域
      • 解决了设备之间的速度差异;协调传输数据大小不一致;维持“复制语义”。
    • 高速缓存(Cache):保留数据拷贝的高速内存
      • 与缓冲的区别:缓冲可能是数据的唯一一个副本;高速缓存是其他地方数据在高速存储上的一个副本。
    • 假脱机SPOOLing
      • 程序1模拟脱机输入,把低速I/O上的数据传送到高速磁盘上;程序2模拟脱机输出,把数据从磁盘传送到低速输出设备。
      • 在联机情况下实现的同时外围操作称为假脱机技术SPOOLing
    • I/O内核子系统
      • 错误处理
      • I/O保护:定义I/O指令为特权指令;应用程序的I/O操作必须通过系统调用实现
      • 内核数据结构:文件打开表;网络连接;字符设备状态..

    相关文章

      网友评论

          本文标题:13.I/O系统

          本文链接:https://www.haomeiwen.com/subject/lxazixtx.html