第五章 设备管理


按信息交换的单位对设备进行分类

块设备(如磁盘,信息传送以块为单位,I/O控制方式通常采用DMA方式,其中的数据可寻址)

字符设备(如打印机,键盘等,信息传送以字节为单位,I/O控制方式通常采用中断方式,其中的数据不可寻址)

按设备的共享属性对设备进行分类

独占设备:一段时间内只允许一个进程访问。

共享设备:可同时访问。可寻址,可随机访问。

虚拟设备: 1个物理设备→若干个逻辑设备


设备控制器

   设备控制器是CPU与I/O设备之间的接口,它接收从CPU发来的命令,并去控制一个或多个设备的工作。

通道

   通道通常是一个硬件,相当于一个功能简单的处理机。

通道的指令类型单一,主要局限于与I/O操作有关的指令;

通道没有自己的内存,是与CPU共享内存。




I/O控制方式发展的主要推动力:

尽量减少主机对I/O的干预;

缓和CPU与I/O设备速度不匹配的矛盾;

提高CPU和I/O设备操作的并行程度。

I/O控制方式

程序I/O方式;

中断驱动方式;

DMA控制方式;

   I/O设备直接与存储设备间之间交换数据,不需经过CPU 

I/O通道控制方式。


缓冲引入的原因

(1)缓和CPU与I/O设备间速度不匹配的矛盾。 

(2)减少对CPU的中断频率, 放宽对CPU中断响应时间的限制。

(3)提高CPU和I/O设备之间的并行性。


设备独立性

是指应用程序独立于具体使用的物理设备。也称为设备无关性。

优点: 1) 增加设备分配时的灵活性 ; 2) 易于实现I/O重定向。

实现方式:1)应用程序通过逻辑设备名来请求使用某类设备;2)系统中必须设置一张逻辑设备表LUT用来进行逻辑设备到物理设备的映射;3)在设备驱动程序之上还应设置一层设备独立性软件。



 设备驱动程序(用来启动I/O设备进行I/O)

(1) 接收由I/O进程发来的命令和参数, 并将命令中的抽象要求转换为具体要求。

(2) 检查用户I/O请求的合法性,了解I/O设备的状态,传递有关参数,设置设备的工作方式。

(3) 发出I/O命令,启动I/O设备。

(4) 及时响应由控制器或通道发来的中断请求。

(5) 根据用户的I/O请求,自动地构成通道程序。 

SPOOLing系统的组成:

①磁盘上的输入/出井:模拟脱机输入/出时的磁盘;

②内存中的输入缓冲区和输出缓冲区;

③内存中的输入进程SPi和输出进程SPo :模拟脱机输入/出时的外围机。

SPOOLing系统的特点

提高了I/O的速度。 

将独占设备改造为共享设备。 

实现了虚拟设备功能。

利用SPOOLing技术共享打印机 

(1)当用户进程请求打印时,系统并不把打印机分配给它,而是为它做两件事:

① 在输出井中为之申请一个空闲磁盘分区, 并将要打印的数据送入其中; 

② 再为用户进程申请一张空白的用户请求打印表,并将用户的打印要求填入其中, 再将该表挂到打印请求队列上。 

(2)打印机空闲时:输出进程取出一张打印请求表,再从输出井中取出打印数据到输出缓冲区,通过打印机进行打印。


磁盘访问时间(寻道时间+旋转延迟时间+数据传输时间) 

操作系统重点快览第五章_寻址

相关因素:寻道距离,磁盘旋转速度,每道的字节数及数据传输量

磁盘移臂调度算法

先来先服务FCFS

最短寻道时间优先SSTF

电梯调度SCAN

 循环扫描CSCAN

NStepSCAN

FSCAN


 


操作系统重点快览第五章_寻址_02