操作系统-设备管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
19
5.1.2 设备控制器
它可分为两类:控制字符设备的控制器 控制块设备的控制器 设备控制器的基本功能 书P162
接收和识别命令 数据交换 设备状态的了解和报告 地址识别 数据缓冲 差错控制
20
设备控制器的组成
由于设备控制器位于CPU与设备之间,它既要与 CPU通信,又要与设备通信,还应具有按照CPU 所发来的命令区控制设备工作的功能。因此有以 下三部分组成: 控制器与处理机接口 该接口用于实现CPU与设备控制器之间的通信。 控制器与设备接口 可以连接一个或多个设备。在每个接口中都存 在数据、控制和状态三种类型的信号。控制器 中的I/O逻辑根据处理机发来的地址信号去选择 一个设备接口。
23
I/O通道是一种特殊的处理机,具有执行I/O指 令的能力。 通过执行通道(I/O)程序来控制I/O操作。 其指令类型单一主要局限于与I/O操作有关的指 令 通道没有自己的内存,通道所执行的通道程序 是放在主机的内存中的。
24
通道类型
字节多路通道
一种按字节交叉方式工作的通道。它通常含有许多非分配型子通道, 其数量从几十 到几百个,每一个子通道连接一台I/O设备,并控制该设备的I/O操作。这些子通道按 时间片轮转方式共享主通道:当第一个子通道控制其I/O设备完成一个字节的交换后, 便立即腾出主通道,让给第二个子通道使用;当所有子通道轮转一周后,重又返回 由第一个子通道去使用主通道。这样,只要字节多路通道扫描每个子通道的速率足 够快,而连接到子通道上的设备的速率不是太高时,便不致丢失信息。
33
I/O控制方式
程序控制I/O(programmed I/O) 中断驱动方式(interrupt-driven I/O) 直接存储访问方式(DMA,Direct Memory Access) I/O通道控制方式 (channel (channel control)
34
程序控制(忙—等待或轮询方式)
系统中没有中断机构,I/O操作由程序发起,并等 待操作完成。数据的每次读写均通过CPU。 – 例如:当主机要通过端口来写出数据时,主机 与控制器之间的握手协议如下:
缺点:在外设进行数据处理时,CPU只能等待, 致使CPU利用率很低。
35
六个步骤
1 主机不断地读取忙位,直到该位被清除; 2 主机设置命令寄存器中的写位并向数据输出寄存器 中写入一个字(节); 3 主机设置命令就绪位; 4 当控制器注意到命令就绪位已被设置,则设置忙位; 5 控制器读取命令寄存器,并看到写入命令,它从数 据输出寄存器中读取一个字(节),并向设备执行 I/O操作。 6 控制器清除命令就绪位,清除状态寄存器的故障位, 以表示设备成功,清除忙位以表示完成。完成一个 字节的传输后继续重复上述步骤取更多的数据。
A 1A 2 A 3 „子通道A B1 B2 B3 „子通道B A 1B1 C1„A 2 B2C2… C1 C2 C3 „子通道C
设备 控制器A 控制器B 控制器C 控制器D
N1 N2 N3 „子通道N
„
控制器N
25
数组选择通道 字节多路通道不适合连接高速设备 数组选择通道可以连接多台高速设备 该通道只含有一个分配型子通道 这种通道的利用率很低 数组多路通道 上面两种通道技术的结合 有多个非分配型子通道 该通道能被广泛地用于连接多台高、中速的外 围设备 具有很高的数据传输速率,又能获得令人满意 的通道利用率
ISA和EISA总线
80286微机的总线。带宽为8bit,最高传输 速率为2Mb/s,可以连接12台外部设备。 扩展ISA即EISA总线:带宽16位。传输速 率高达32Mb/s,可以连接12台外部设备。
31
局部总线
局部总线是指将多媒体卡,高速LAN网卡,高性 能图形板等从ISA总线上卸下来,再通过局部总 线控制器直接连接到CPU总线上,使之与高速 CPU总线相匹配。局部总线中较有影响的是 VESA和PCI总线。 VESA:带宽32位。最高传输速率132Mb/s,仅能 连接2~4台设备。 PCI:PCI在CPU和外设之间插入一复杂的管理层, 用于协调数据传输和提供一致的接口。PCI能支 持10种外设,最大传输速率可达132Mb/s。是当 前广为流行的总线。
设备管理的目的和功能
外设管理目的
提高效率:提高I/O访问效率,匹配CPU和多种不同 处理速度的外设。 方便使用:方便用户使用,对不同类型的设备统一 使用方法,协调对设备的并发使用。 方便控制:方便OS内部对设备的控制:增加和删除 设备,适应新的设备类型。
5
设备管理的目的和功能
外设管理功能
I/O SYSTEMS
1
计算机系统的一个重要组成部分是I/O系统。 I/O系统包括:输入设备 输出设备 设备控制器 I/O通道或I/O处理机 设备管理的对象主要是:I/O设备 设备控制器 I/O通道
2
设备管理的基本任务是:完成用户提出的I/O 请求,提高I/O速率,提高I/O设备的利用率。 设备管理的主要功能有:缓冲区管理 设备分配 设备处理 虚拟设备 实现设备独立性 设备管理是OS中最繁杂且与硬件最紧密相关 的部分。
图5-1 设备与控制器间的接口
控制信号线:作为设备控制器向 I/O设备发送控制信号时的通路。 数据信号线:用于在设备和设备控制器之间传送数据信号。输入设备:外界 状态信号线:用于传送指示设备当前状态的信号。 该信号规定了设备将要执行的操作: 输入的信号经转换器转换后形成的数据,通常先送入缓冲器中,当数据量达 设备的当前状态有: 读操作(指由设备向控制器传送数据) 到一定的比特数后,再从缓冲器通过一组数据信号线传送给设备控制器。输 正在读(写) 写操作(从控制器接收数据) 出设备:将从设备控制器经过数据信号线传送来的一批数据先暂存于缓冲器 设备已读(写)完成,并准备好新的数据传送。 中,经转换器作适当转换后,再逐个字符地输出。
3
本章总览
OS在 I/O方面的功能是管理和控制 I/O操作 和I/O设备。 I/O技术表现出两大相冲突的发展趋势:
硬件接口的标准化程度的提高 设备类型的更多样化的高速发展
基本的I/O硬件像接口,总线,设备控制器 技术的发展顺应了I/O设备的广泛变化。 操作系统内核用各种设备驱动模块来组织 I/O子系统结构 。 问题:性能和复杂。 4
28
5.1.4 总线系统
总线是许多信号线的集合,它是微型计算机 芯片间、各部件间和外部设备间相互进行信 息或数据交换的通路。由于计算机内部定向 的信息流和数据流在总线中的流动,就形成 了计算机的各种操作。 常见的系统总线标准有ISA、EISA、PCI等 总线
29
总线的主要技术指标
• •
缓冲
转换器
信号 数据
18
5.1.2 设备控制器
设备控制器是计算机中的一个实体,其主要 职责是控制一个或多个I/O设备,以实现I/O设 备和计算机之间的数据交换。 它是CPU与I/O设备间的接口,它接收从CPU 发来的命令,并去控制I/O设备工作,使处理 机从繁杂的设备控制事务中解脱出来。 它是一个可编址的设备,当它仅控制一个设 备时,它只有一个唯一的设备地址;若控制 多个设备时,则应含有多个设备地址,并使 每一个设备地址对应一个设备。
CPU与控制器接口 控制 器与设 备接口 数据 状态 控制
数据线
数据寄存器 控制/ 状态 寄存器
控制器 与设备 接口1
„
地址线 I/O逻辑 控制线 控制器 与设备 接口i 数据 状态 控制
Baidu Nhomakorabea
图5-2 设备控制器的组成
„
22
5.1.3 I/O通道
在CPU与I/O设备之间增加了设备控制器后,已能大大减少 CPU对I/O的干预,但当主机所配置的外设很多时,CPU的 负担仍然很重。为此,在CPU和设备控制器之间又增设了 I/O通道。 其主要目的是为了建立独立的I/O操作,不仅使数据的传送 能独立于CPU,而且I/O操作的组织、管理及结束处理尽量 独立,以保证CPU有更多的时间进行数据处理。 即设置I/O通道的目的是使一些原来由CPU处理的I/O任务转 由通承担,从而把CPU从繁杂的I/O任务中解脱出来。 设置了通道后,CPU只需向通道发送一条I/O指令。通道收 到该指令后,便从内存中取出本次要执行的通道程序,然 后执行该通道程序;仅当通道完成了规定的I/O任务后,才 向CPU发中断信号。
按信息交换的单位分类 • 块设备: 这类设备用于存储信息。 属于有结构 设备。 典型的块设备是磁盘, 每个盘块的大小 为 512 B~4 KB 。传输速率较高,可寻址即对它 可随机地读 / 写任一块;磁盘设备的 I/O 常采用 DMA 方式。 • 字符设备: 用于数据的输入和输出。 其基本单 位是字符, 故称为字符设备。 按设备的共享属性分类 独占设备 共享设备 虚拟设备
32
5.2 I/O控制方式
I/O控制方式是随着计算机技术的发展而不断发展的。 在I/O控制方式的整个发展过程中,始终贯穿的宗旨是: 尽量减少主机对I/O控制的干预,把主机从反之的I/O控 制事物中解脱出来,以便更多地去完成数据处理任务。 早期采用程序控制I/O方式; 当在系统中引入中断机制后,便发展为中断驱动方式; 随着DMA控制器的出现,又使I/O方式在传输单位上发 生了变:即从以字节为单位的传输扩大到以数据块为 单位进行传输。从而改善了块设备的I/O性能; 通道的引入,又使对I/O操作的组织和数据的传送都能 独立进行而无需CPU干预。
26
瓶颈问题
通道1 控制器1 控制器2 存储器 控制器3 通道2 控制器4 设备1 设备2 设备3 设备4 设备5 设备6 设备7
通道价格昂贵,通道数量势必减少。这往往又使 它成了I/O的瓶颈,从而造成整个系统吞吐量的下 降。假设设备1至设备4是四个磁盘,为了启动磁 盘4,必须用通道1和控制2;但若这两者已被其他 设备占用,必然无法启动磁盘4。
16
2.设备与控制器之间的接口 通常,设备并不直接与CPU进行通信, 而是与设 备控制器通信。因此, 在I/O设备中应含有与设 备控制器间的接口。在该接口中有三种类型的信 号各对应一条信号线。
设备与控制器之间的接口 数据信号 控制信号 状态信号
17
I/O设备 至设备 控制器 数据信号线 状态信号线 控制逻辑 控制信号线
设备分配和释放:使用设备前,需要分配设备和相 应的通道、控制器。 设备的访问和控制:包括并发访问和差错处理。 I/O缓冲和调度:目标是提高I/O访问效率(主要是 磁盘)。
6
7
8
9
10
11
5.1
• I/O系统的结构
I/O系统
12
A typical PC bus structure
13
14
5.1.1 I/O设备
1.I/O设备的类型
I/O设备的类型繁多,从OS观点看,其重要的性 能指标有:数据传输速率、数据的传输单位、设备 共享属性等。 按传输速率分类 • 低速设备 典型设备有:键盘、 鼠标器、语音输入和输出等。 • 中速设备 典型设备有:行式打印机、激光打印机等。 • 高速设备 典型设备有:磁带机、磁盘机、光盘机等。 15
•
•
总线数据传输速率 单位时间内总线上传送的数据量,即每钞钟传送 Mb的最大稳态数据传输率。 总线数据传输速率=总线的工作频率*总线的位 宽/8 。 总线的带宽 总线的带宽指的是总线能同时传送的二进制数据 的位数,或数据总线的位数,即32位、64位等总 线宽度的概念。 总线的工作频率 总线的工作时钟频率以MHZ为单位,工作频率 越高,总线工作速度越快,总线传输速率越高。 30
27
瓶颈问题的解决
I/O设备 通道1 存储器 I/O设备 通道2 控制器2 I/O设备 控制器1 I/O设备
解决方法:增加设备到主机间的通路而不增加通 道。就是把一个设备连接到多个控制器上,而一 个控制器又连接到多个通道上。图中的设备1、2、 3、4都有四条通往存储器的通路。多通路方式不 仅解决了瓶颈问题,而且提高了系统的可靠性。
21
I/O逻辑
I/O逻辑用于实现对设备的控制:它通过一组控制线与处理机交 互, 处理机利用该逻辑向控制器发送I/O命令; I /O逻辑对收到 的命令进行译码。每当 CPU要启动一个设备时,一方面将启动 命令发送给控制器; 另一方面有通过地址线把地址发送给控制 器,由控制器的I/O逻辑对收到的地址进行译码,再根据所译出 的命令对所选设备进行控制。