I/O设备管理及缓冲分配详解

第五章 设备管理

  • 5.1 I/O系统
  • 5.2 I/O控制方式
  • 5.3 缓冲管理
  • 5.4 设备分配
  • 5.5 设备处理
  • 5.6 磁盘存储器管理
计算机系统的一个重要组成部分是I/O系统。
I/O系统包括所有信息输入、输出和存储功能的设备和相应的设备控制器,在有的大中型机器中,还有I/O通道或I/O处理机。
设备管理的对象是I/O设备,还可能要涉及到设备控制器和I/O通道。
设备管理的基本任务是完成用户提出的I/O请求,提高I/O速率以及改善I/O设备的利用率。

一、I/O设备

将分为以下两部分来讲解I/O设备:
  • 1、I/O设备的类型
  • 2、设备与控制器之间的接口

1、I/O设备的类型

I/O设备的类型繁多,从OS的观点来看,其重要的性能指标有:数据传输速率、数据的传输单位、设备共享属性等。因而从以下不同角度进行分类:

  • 按设备的使用特性分类
  • 按传输速率分类
  • 按信息交换的单位分类
  • 按设备的共享属性分类

图片1
图片2

图片3

图片4

图片5

图片6

设备控制器的基本功能
  • 接收和识别命令
  • 数据交换
  • 标识和报告设备的状态
  • 地址识别
  • 数据缓冲
  • 差错控制
设备控制器的组成

设备控制器位于CPU与设备之间,它既要与CPU通信,又要与设备通信,还应具有按照CPU所发来的命令去控制设备工作的功能,因此大部分控制器有以下三部分组成:

  • 设备控制器与处理机的接口
  • 设备控制器与设备的接口
  • I/O逻辑

图片7

1、设备控制器与处理机的接口

该接口用于实现CPU与设备控制器之间的通信。共有三类信号线:数据线、地址线和控制线。数据线通常与两类寄存器相连接,第一类是数据寄存器;第二类是控制/状态寄存器。

2、设备控制器与设备的接口

在一个设备控制器上,可以连接一个或多个设备。相应地,在控制器中便有一个或多个设备接口,一个接口连接一个设备。在每个接口都存在数据、控制和状态三种类型的信号。控制器中的I/O逻辑根据处理机发来的地址信号,去选择一个设备接口。

3、I/O逻辑

用于实现对设备的控制。它通过一组控制线与处理机交互,处理机利用该逻辑向控制器发送I/O命令,I/O逻辑对收到的命令发送给控制器;另一方面又同时通过地址线把地址发送给控制器,由控制器的I/O逻辑对收到的地址进行译码,再根据所译出的命令对所选设备进行控制。

三、I/O通道

I/O通道设备的引入

其主要目的是为了建立独立的I/O操作,去解放CPU。在设置通道后,CPU只需向通道发送一条I/O指令。通道完成任务后向CPU发中断信号。

I/O通道是一种特殊的处理机。与一般处理机不同于两方面:
  • 指令类型单一,只用于I/O操作;
  • 通道没有内存,它与CPU共享内存。
通道类型
根据信息交换方式可分为以下三种类型:
  • 字节多路通道
  • 数组选择通道
  • 数组多路通道

图片8

5.2 I/O控制方式

  • 一、程序I/O方式
  • 二、中断驱动I/O方式
  • 三、直接存储器访问DMAI/O控制方式
  • 四、I/O通道控制方式

图片9

图片10

图片11

图片12

5.3 缓冲管理

为了缓和CPU和I/O设备速度不匹配的矛盾,提高CPU和I/O设备的并行性,在现代OS中,几乎所有的I/O设备与处理机交换数据时,都用了缓冲区。

一、缓冲的引入

引入缓冲区的主要原因归结为以下几点:
  • 缓和CPU与I/O设备间速度不匹配的矛盾。
  • 减少对CPU的中断频率,放宽对CPU中断响应时间的限制。
  • 提高CPU和I/O设备之间的并行性。

二、单缓冲与多缓冲

图片13

图片14

图片15

三、循环缓冲

图片16

图片17

图片18

四、缓冲池

图片19

图片20

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

loveCC_orange

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值