第五章 设备管理

第五章 设备管理
1.I/O设备的类型
低速设备 **
每秒几个字节至数百字节
键盘、鼠标、语音输入输出设备等
中速设备
每秒数千至数万字节
行式打印机、激光打印机等
高速设备
每秒数百K至数十M字节
磁盘机、磁带机、光盘机等
(2)按信息交换的单位分类
块设备(Block Device)
信息的存取总是以数据块为单位
基本特征是其传输速率较高,通常每秒钟为几兆位
可寻址,即对它可随机地读/写任一块
属于有结构设备
磁盘的I/O常采用DMA方式,每个盘块的大小为512B~4KB
字符设备(Character Device)
基本单位是字符
基本特征是其传输速率较低,通常每秒钟为几个字节到数千字节
不可寻址
属于无结构设备
通常采用中断驱动方式
例:交互式终端、打印机
(3)按设备的共享属性分类
独占设备(临界资源 )
如打印机
共享设备 **
可供多个进程同时访问,如磁盘
共享设备必须是可寻址的和可随机访问的设备。
虚拟设备
通过虚拟技术将一台独占设备变换为若干个逻辑设备,供若干个进程同时使用
(4)按操作(使用)特性分类
存储设备:用来存放各种信息的设备称为存储设备
例软盘、磁盘、光盘和磁带等
I/O设备:用来向计算机输入和输出信息的设备
如键盘、鼠标、显示器、打印机
在现代计算机系统中有些设备既可以做存储设备,也可以做I/O设备,例如,软盘、硬盘等。
2.设备与设备控制器之间的接口
数据信号线
用于在设备和设备控制器之间传送数据信号
控制信号线
作为由设备控制器向I/O设备发送控制信号时的通路
状态信号线
用于传送指示设备当前状态的信号
3.设备控制器的基本功能
(1)接收和识别命令
(2)数据交换
(3)标识和报告设备的状态
(4)地址识别
(5)数据缓冲
(6)差错控制
4.设备控制器的组成
设备控制器与处理机的接口
该接口用于实现设备控制器与CPU之间的通信。在该接口中有三类信号线:数据线、地址线、控制线。
设备控制器与设备的接口
在一个设备控制器上,可以连接一台或多台设备。相应地,在控制器中就有一个或多个设备接口,一个接口连接一台设备,在每个接口中都有数据、控制和状态三种类型的信号。
I/O逻辑
控制器对设备的控制通过I/O逻辑实现的。包括对收到命令和地址进行译码。
5.I/O通道(I/O Channel)设备的引入
是一种
特殊处理机
,专门负责输入/输出工作
有自己简单的指令系统,只有数据传送指令和设备控制指令
主要目的是为了建立独立的I/O操作,使有关对I/O操作的组织、管理及其结束处理也独立于CPU
CPU向I/O通道发送I/O命令,由通道执行程序
通道与一般处理机的区别
指令类型单一,局限于与I/O操作有关命令。
没有独立的内存,通道与CPU共享内存。
6.通道类型
(1)字节多路通道(Byte Multiplexor Channel)
一个主通道连接多个子通道,以时间片轮转方式共享主通道
每个子通道每次只传送一个字节,连接中低速设备
(2)数组选择通道(Block Selector Channel)
由于(1)不适合高速设备
数组方式工作,高速传输数据
可以连接多台高速设备
每次只有一台设备进行数据传送,形成独占,如果它不传数据,别的设备也传不了。通道利用率较低。
** (3)数组多路通道**(Block Multiplexor Channel)
由于(2)有独占性
数组选择通道传输速率高和字节多路通道分时并行操作的优点相结合而形成的一种新通道
其数据传送是按数组方式
采用分时传送多个非分配型子通道, 因而这种通道既具有很高的数据传输速率,又能获得令人满意的通道利用率
7.局部总线是指将多媒体卡、高速网卡、高性能图形板等从ISA总线上卸下来,再通过局部总线控制器直接接到CPU总线上
8.内存与外设的控制方式主要有四种:程序I/O方式、中断驱动I/O方式、直接存储访问DMA I/O控制方式和I/O通道控制方式。
9.
程序I/O控制方式也称为“忙—等待”方式,即在一个设备的操作没有完成时,控制程序一直检测设备的状态,直到该操作完成,才能进行下一个操作。
CPU通过I/O测试指令测试设备接口中的状态位,当为“忙”时则一直测试,当为“闲”时,可进行数据传送,每次传送一个字符
CPU的绝大部分时间都处于等待I/O设备完成数据I/O的循环测试中
外设不能合理使用,也无法支持多道程序
10.DMA控制器的组成
主机与DMA控制器的接口
DMA控制器与块设备的接口
I/O控制逻辑
11.
为了实现在主机与控制器之间成块数据的直接交换, 必须在DMA控制器中设置如下四类寄存器:
(1)命令/状态寄存器CR。用于接收从CPU发来的I/O命令或有关控制信息,或设备的状态。
(2)内存地址寄存器MAR。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。
(3)数据寄存器DR。用于暂存从设备到内存,或从内存到设备的数据。
(4)数据计数器DC。存放本次CPU要读或写的字(节)数。
12.I/O通道控制方式
1.I/O通道控制方式的引入 **
与DMA类似,是以内存为中心的数据交换方式
它可进一步减少CPU的干预,即把对一个数据块的读(或写)为单位的干预,减少为对一组数据块的读(或写)及有关的控制和管理为单位的干预
一个通道控制多台设备
CPU仅在I/O操作的开始和结束时花费少量时间处理与I/O有关的工作
可实现CPU、通道和I/O设备三者的并行操作,从而更有效地提高整个系统的资源利用率
通道控制方式的
步骤 **
①当进程要求输入数据时,CPU发启动指令指明I/O操作、设备号和对应通道。
②对应通道接收到CPU发来的启动指令后,把存放在内存中的通道指令程序读出,并执行通道程序,控制设备将数据传送到内存中指定的区域。
③若数据传输结束,则向CPU发出中断请求。CPU收到中断信号后转中断处理程序,唤醒等待输入完成的进程,并返回被中断的程序。
④在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存始址取出数据做进一步处理。
通道控制方式特点:
①I/O通道是一种特殊的处理器,它具有执行I/O操作指令的能力。
②I/O通道通过执行通道(I/O)程序来控制I/O操作,完成I/O任务。
③通道程序是放在内存中的,即通道与CPU共享内存。
④CPU、通道、I/O设备三者并行工作。
⑤能传送多个数据块。
13.通道程序
(1)操作码
规定指令所执行的操作,如读、写、控制等
(2)内存地址
标明字符送入内存或从内存取出的内存首址
(3)计数
本条指令所要读/写的字节数
(4)通道程序结束位
表示通道程序是否结束,P=1表示结束
(5)记录结束标志
R=0,表示本指令与下一指令处理同一个记录;R=1表示处理某记录的最后一条指令
14.缓冲的引入
(1)缓和CPU与I/O设备间速度不匹配的矛盾。
(2)减少对CPU的中断频率,放宽对CPU中断响应时间的限制。
(3)提高CPU和I/O设备之间的并行性。
15.对缓冲区的理解
①缓冲是提高CPU与外设并行程度的一种技术。
②凡是数据来到速度和离去速度不同的地方都可以使用缓冲区。如CPU与内存之间有高速缓存(Cache Memory),主存与显示器之间有显示缓存,主存与打印机之间有打印缓存等等。
③缓冲的实现方式有两种:一是,采用硬件缓冲器实现;二是,在内存划出一块区域,专门用来存放临时输入输出的数据,这个区域称为缓冲区。
④根据系统设置缓冲区的个数,将缓冲技术分为:单缓冲、双缓冲、循环缓冲、缓冲池。 **
16.循环缓冲的引入
当输入与输出速度基本匹配时,双缓冲能获得较好效果;当速度
相差较大时,可引入多个缓冲,组织成循环缓冲的形式
17. 缓冲池的组成
专用缓冲的利用率不高,因此设置公用缓冲池,其中至少应含有以下三种类型的缓冲区:
①空(闲)缓冲区;
②装满输入数据的缓冲区;
③装满输出数据的缓冲区。
为了管理上的方便,可将相同类型的缓冲区链成一个队列,于是可形成以下三个队列:
(1)空缓冲队列emq。由
空缓冲区所链成的队列;
(2)输入队列inq。由
装满输入数据的缓冲区所链成的队列;
(3)输出队列outq。由
装满输出数据的缓冲区所链成的队列。
18.设备分配中的数据结构
设备控制表DCT 用于记录设备的特性及I/O控制器连接的情况。
控制器控制表COCT 每个控制器配置一张表,它反映控制器的使用状态以及和通道的连接状况等。
通道控制表CHCT
系统设备表SDT
19.设备分配时应考虑的因素
1.设备的固有属性
(1)独占性
独占设备是不能同时共用的设备,即在一段时间内,该设备只允许一个进程独占。
(2)共享性
允许多个进程同时共享
(3)可虚拟性
虚拟设备是利用某种技术把独占设备改造成可由多个进程共用的设备。
2.设备分配算法
(1)先来先服务
(2)优先级高者优先
3.设备分配中的安全性
(1)安全分配方式
每当进程发出I/O请求后,便进入阻塞状态,I/O操作完成后唤醒
摒弃了“请求和保持”条件,不会产生死锁
缺点:进程进展缓慢
(2)不安全分配方式 **
进程发出I/O请求后仍继续运行
可操作多个设备,推进迅速快
20.设备独立性(Device Independence)的概念
为了提高OS的可适应性和可扩展性,在现代OS中都毫无例外地实现了
设备独立性
,也称为设备无关性
其基本含义是:应用程序独立于具体使用的物理设备,即是指用户在编程序时所使用的设备与实际设备无关。
为了实现设备独立性而引入了逻辑设备物理设备这两个概念
在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统在实际执行时,还必须使用物理设备名称
系统须具有将逻辑设备名称转换为某物理设备名称的功能,这非常类似于存储器管理中所介绍的逻辑地址和物理地址的概念
21.脱机输入/输出(Off-Line I/O)方式
在这里插入图片描述
22.在这里插入图片描述
23.共享打印机
打印机为独占设备,利用SPOOLing技术,可将之改造为共享设备
24.扇区有标识符字段和数据字段
25.磁盘的类型
(1)固定头磁盘
这种磁盘在每条磁道上都有一读/写磁头,所有的磁头都被装在一刚性磁臂中。通过这些磁头可访问所有各磁道,并进行并行读/写,有效地提高了磁盘的I/O速度
(2)移动头磁盘
每一个盘面仅配有一个磁头,也被装入磁臂中。为能访问该盘面上的所有磁道,该磁头必须能移动以进行寻道
26.磁盘访问时间
(1)寻道时间Ts
这是指把磁臂(磁头)移动到指定磁道上所经历的时间。该时间是启动磁臂的时间s与磁头移动n条磁道所花费的时间之和,即
Ts=m×n+s
(2)旋转延迟时间Tr
这是指定扇区移动到磁头下面所经历的时间
3)传输时间Tt
这是指把数据从磁盘读出或向磁盘写入数据所经历的时间。Tt的大小与每次所读/写的字节数b和旋转速度有关

r为磁盘每秒钟的转数;N为一条磁道上的字节数
27.磁盘调度1.先来先服务FCFS2.最短寻道时间优先SSTF3.扫描(SCAN)算法
28.在这里插入图片描述
29.在这里插入图片描述
30.在这里插入图片描述
31.在这里插入图片描述
32.提高磁盘I/O速度的其它方法
1.提前读(Read-Ahead)
在读当前块的同时,将下一盘块读入缓冲区
2.延迟写
缓冲区中的数据不立即写回磁盘,而挂在队尾
3.优化物理块分布
使文件的物理块集中,减小磁头移动距离
4.虚拟盘

发布了192 篇原创文章 · 获赞 71 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_43870649/article/details/90315547
今日推荐