05 输入/输出(I/O)管理

第5章 输入/输出(I/O)管理

5.1 I/O管理概述

5.1.1 I/O设备的概念和分类

1.什么是I/O设备

  • I/O(Input/Output)设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备,属于计算机中的硬件部分

  • UNIX系统将外部设备抽象为一种特殊的文件,用户可以使用与文件操作相同的方式对外部设备进行操作,如Write操作和Read操作

2.I/O设备的分类

  • 按使用特性分为:人机交互类外部设备(如鼠标、键盘,传输速度慢)、存储设备(如移动硬盘、光盘,传输速度快)、网络通信设备(如调制解调器,传输速度介于两者之间)
  • 按传输速率分类:低速设备、中速设备、高速设备
  • 按信息交换的单位分类:块设备(数据传输的基本单位是块,如磁盘,传输速度高,可寻址)、字符设备(数据传输的基本单位是字符,如鼠标、键盘,速率慢,不可寻址,采用中断驱动)

3.总结

在这里插入图片描述

5.1.2 I/O控制器

  • I/O设备由机械部件和**电子部件(I/O控制器,又称为设备控制器)**组成

1.I/O设备的电子部件(I/O控制器)

  • 定义:CPU不能直接控制I/O设备的机械部件,CPU和I/O机械部件中介就是I/O控制器
  • 功能:接收和试别CPU发出的命令(控制寄存器)、向CPU报告设备的状态(状态寄存器)、数据交换(数据寄存器)、地址识别

在这里插入图片描述

2.I/O控制器的组成

  • CPU与控制器的接口I/O逻辑控制器与设备的接口组成
  • 细节:一个I/O控制器可能会对应多个设备,因此寄存器可能也有多个,这些寄存器要有相应的地址,有的计算机会让这些寄存器占用内存地址的一部分,称为内存映像I/O,还有一些计算机采用I/O专用地址,即寄存器独立编址

在这里插入图片描述

3.内存映像I/O vs 寄存器独立编址

  • 内存映像I/O:控制器中的寄存器与内存地址统一编址,优点是简化了指令;
  • 寄存器独立编址:控制器中的寄存器使用单独的地址,缺点是需要设置专门的指令

在这里插入图片描述

4.总结

在这里插入图片描述

5.1.3 I/O控制方式

1.程序直接控制方式
在这里插入图片描述

在这里插入图片描述

2.中断驱动方式

在这里插入图片描述

在这里插入图片描述

3.DMA方式(直接存储器存取)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.通道控制方式

在这里插入图片描述

在这里插入图片描述

5.总结

在这里插入图片描述

5.1.4 I/O软件的层次结构

1.知识总览

在这里插入图片描述

2.用户层软件

在这里插入图片描述

3.设备独立性软件

  • 设备独立性软件又称设备无关性软件,与设备的硬件特性无关的功能几乎都在这一层实现
  • 功能:
    • 向上层提供系统调用的接口
    • 设备保护(类似于文件的保护)
    • 差错处理
    • 设备的分配与回收
    • 数据缓冲区管理
    • 建立逻辑设备名到物理设备名的映射关系;根据设备类型选择调用相应的驱动程序。
      • 设备独立性软件通过逻辑设备表(LUT)来确定对应的物理设备,并找到该设备对应的设备驱动程序。LUT由逻辑设备名、物理设备名和驱动程序入口地址组成。操作系统有两种方式管理LUT,第一种是整个系统只有一张LUT,只适合于单用户操作系统;第二种是为每个用户设置一张LUT

4.设备驱动程序

  • 主要负责对硬件设备的具体控制,将上层发出的一系列命令转化成特定设备能听得懂的一系列操作

在这里插入图片描述

5.中断处理程序

  • 当I/O完成时,I/0控制器会发送一个中断信号,系统会根据中断信号类型找到相应的中断处理程序并执行

在这里插入图片描述

6.总结

在这里插入图片描述

在这里插入图片描述

5.1.5 I/O核心子系统

1.知识总览

在这里插入图片描述

2.总结

在这里插入图片描述

5.1.6 假脱机技术(SPOOLing技术)

1.脱机技术

  • 批处理阶段引入了脱机输入/输出技术(用磁带完成)

在这里插入图片描述

2.假脱机技术

  • 输入/出井类比于磁带,输入/出进程类比于外围控制机

在这里插入图片描述

3.共享打印机原理

  • 独占式设备:只允许各个进程串行使用的设备
  • 共享设备:允许多个进程同时使用的设备
  • 打印机是独占式设备,但是可以用SPOOLing技术改造成共享设备

在这里插入图片描述

在这里插入图片描述

4.总结

在这里插入图片描述

5.1.7 设备的分配与回收

1.设备分配时应该考虑的因素

  • 设备的固有属性:独占设备、共享设备、虚拟设备
  • 设备分配算法
  • 设备分配的安全性
    • 安全分配方式:在一个时间段内每个进程只能使用一个设备
    • 不安全分配方式

2.静态分配和动态分配

  • 静态分配:进程运行前为其分配全部所需资源,运行结束后归还资源
  • 动态分配:进程运行过程中动态申请设备资源

3.设备分配管理中的数据结构

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4.总结

在这里插入图片描述

在这里插入图片描述

5.1.8 缓冲区管理

1.缓冲区的定义与作用

在这里插入图片描述

在这里插入图片描述

2.单缓冲

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3.双缓冲

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.循环缓冲区

在这里插入图片描述

5.缓冲池

在这里插入图片描述

6.总结

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值