第六章 设备管理1

一、I/O系统的功能、模型和接口

1、基本任务:

1)完成用户提出的I/O请求,

2)提高I/O速率、改善I/O设备的利用率。

3)为更高层进程方便使用设备提供手段


2、主要功能:

1)隐藏物理设备细节,方便用户

用户使用抽象的I/O命令即可

2)实现设备无关性,方便用户

用户可用抽象的逻辑设备名来使用设备,同时也提高了OS的可移植性和易适应性。

3)提高处理机和设备的并行性,提高利用率:缓冲区管理

4)对I/O设备进行控制:控制方式、设备分配、设备处理

5)确保对设备正确共享:虚拟设备及设备独立性等

6)错误处理

3、I/O软件的分层

二、I/O设备和设备控制器

1、I/O系统的组成

1)需要用于输入、输出和存储信息的设备;

2)需要相应的设备控制器;

3)控制器与CPU连接的高速总线;

4)有的大中型计算机系统,配置I/O通道;


2、

3、I/O设备中的接口

1)数据信号线(进出数据转换、缓冲后传送)

2)控制信号线(读\写\移动磁头等控制)

3)状态信号线

4、I/O逻辑

¨将启动命令发送给控制器;

¨同时通过地址线把地址发送给控制器

¨控制器的I/O逻辑对收到的地址和命令进行译码,再根据所译出的命令选择设备进行控制。

5、处理机与设备控制器间

¨数据线:数据线通常与两类寄存器相连接,第一类是数据寄存器;第二类是控制/状态寄存器。

¨地址线

¨控制线

6、I/O通道

1)字节多路通道

2)数组选择通道

3)数组多路通道


三、中断机构和中断处理程序

1、中断和陷入

¨中断:CPU对I/O设备发来的中断信号的一种响应,中断是由外部设备引起的,又称外中断。

¨陷入:由CPU内部事件所引起的中断,通常把这类中断称为内中断或陷入(trap)。

¨中断和陷入的主要区别:是信号的来源。

2、对多中断源的处理方式

1)屏蔽中断

2)嵌套中断

3、中断处理程序主要工作

¨①进行进程上下文的切换

¨②对处理中断信号源进行测试

¨③读取设备状态

¨④修改进程状态

4、中断处理流程

¨测定是否有未响应的中断信号

¨保护被中断进程的CPU环境

¨转入相应的设备处理程序

¨中断处理

¨恢复CPU的现场


四、设备驱动程序

1、驱动程序的功能

(1)接收由与设备无关的软件发来的命令和参数,并将命令中的抽象要求,转换为与设备相关的低层操作序列;

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

(3)发出I/O命令,如果设备空闲,便立即启动I/O设备,完成指定的I/O操作;如果设备忙碌,则将请求者挂在设备队列上等待;

(4)及时响应由设备控制器发来的中断请求,并根据其中断类型,调用相应的中断处理程序进行处理。

2、特点

(1)驱动程序是与设备无关的软件和设备控制器之间通信和转换的程序。

(2)驱动程序,与设备控制器和I/O设备的硬件特性,紧密相关。     

(3)驱动程序与I/O设备所采用的I/O控制方式紧密相关。

(4)由于驱动程序与硬件紧密相关,因而其中的一部分必须用汇编语言编写。

(5)驱动程序应允许可重入,一个正在运行的驱动程序常会在一次调用完成前被再次调用。

3、设备处理方式

¨(1)为每一类设备设置一个进程,专门用于执行这类设备的I/O操作。这种方式比较适合于较大的系统;

¨(2)在整个系统中设置一个I/O进程,专门用于执行系统中所有各类设备的I/O操作。也可以设置一个输入进程和一个输出进程,分别处理系统中的输入或输出操作;

¨(3)不设置专门的设备处理进程,而只为各类设备设置相应的设备驱动程序,供用户或系统进程调用。这种方式目前用得较多。

4、I/O控制方式

程序I/O方式

中断驱动I/O方式

直接存储器访问DMA(字节—块)

I/O通道控制方式(组织传送的独立)

宗旨:减少主机对I/O控制的干预,将CPU从繁杂的I/O控制事物中解脱出来。

5、DMA控制器的组成

1.主机与DMA控制器的接口;

2.DMA控制器与块设备的接口;

3.I/O控制逻辑。

6、DMA工作方式流程图

五、与设备无关的I/O软件

1、设备分配中的数据结构

¨设备控制表

¨控制器控制表

¨通道控制表

¨系统设备(总)表

2、独占设备的分配过程

1)分配设备

2)分配控制器

3)分配通道

你可能感兴趣的:(第六章 设备管理1)