自学内容网 自学内容网

操作系统14

一、I/O设备管理的任务

1.解决I/O设备和CPU速度不匹配的矛盾

2.提供简单易用的接口,实现对设备的统一管理

3.保证设备的安全性

二、I/O设备分类

1.按设备的使用特性分类

        输入设备、输出设备、交互式设备、存储设备

2.按设备的信息组织方式分类

        字符设备和块设备

3.按设备使用的可共享性分类

        独占设备、共享设备、虚拟设备

        虚拟设备是指在一类设备上模拟另一类设备,目的是为了提高设备利用率。

三、I/O设备管理与文件管理的关系

I/O设备管理对象:

        I/O设备,是对资源的管理,提供标准接口供用户用这些设备。

文件管理对象:

        设备里面存储的数据和信息,提供一整套对这些资源的管理原则,并且以文件及其配套的概念来具体实施。

UNIX系统中:

        所有设备都当做文件对象来管理。

四、I/O硬件组成

不同的人对于I/O硬件的理解不同:

        电子工程师:I/O硬件就是芯片、导线、电源

        程序员:I/O硬件提供给软件的接口,如硬件能够接受的命令,它能够完成地功能以及让能够报告的错误等。

        主要介绍怎样对I/O设备编程,而不会是如何设计、制造和维护硬件。

        硬件角度,I/O硬件由物理设备和电子部件两部分组成。

        物理设备是达成I/O硬件功能的基础,对操作系统而言更注重的是其电子部件的控制方式。

        第一层:处理器和内存,通过总线与接口部件连接。

        第二层:接口(适配器)

        第三层:设备管理器,是一种电子部件,每个设备控制器都有若干个寄存器与处理器进行通信。

        第四层:外围设备,设备并不直接与CPU进行通信,而是与设备控制器进行通信。

五、I/O软件组成

1.I/O软件结构的基本思想

        I/O软件组成一系列层次,较低的层次处理与硬件有关的细节,并将硬件的特征与较高的层隔离;较高的层则向用户提供一个友好的、清晰而规整的I/O接口。

2.I/O软件结构

        四层:中断处理程序、设备驱动程序、设备独立层软件、用户层软件。

六、设备独立性

含义:

        除了直接与设备打交道的底层软件之外,其他部分的软件并不依赖于硬件。即应用程序中所使用的设备,不局限与使用某个具体的物理设备,也称为设备无关性。

优点:

        当I/O设备更新时,没有必要重新编写全部I/O软件。实际应用只要安装了驱动程序,可以方便地安装好新的I/O设备。

设备独立性软件的功能如下:

1.设备命名

        在操作系统的I/O软件中,借用了与文件系统统一命名的方法,即采用文件系统路径名的方法来命名设备。

        例如:UNIX系统中,/dev/tty00,确定了一个特殊文件,其中包含了主设备号和次设备号。主设备号用于寻找对应的设备驱动程序,而次设备号提供了设备驱动的程序的有关参数,用来确定要读写的具体设备。

2.设备保护

        防止未授权用户对设备的非法使用

        UNIX系统:存取权限模式,rwx位进行保护。

3.提供一个与设备无关的逻辑块

        不同的设备,存储空间大小、读取速度、传输速率各不相同,与设备无关软件通过向上提供大小统一的逻辑块屏蔽这种不同,使得上层软件只与抽象设备打交道,而不必考虑上述不同。

4.缓冲

5.存储设备的块分配

6.独占设备的分配和释放

7.错误处理

I/O设备控制方式

I/O设备的控制方式取决于I/O设备硬件与处理器和内存的连接方式以及设备的驱动程序,主要有四种方式:

1.程序控制方式

2.中断控制程序

3.DMA控制方式

4.通道控制方式

七、程序控制方式

        程序控制方式也称为PIO(programmer I/O)方式,是指由用户进程直接控制处理器或内存和外围设备之间进行信息传送的方式,也称为“忙-等”方式,轮询方式或循环测试方式,这种方式的控制者是用户进程。

以输入数据为例:

(1)处理机向控制器发出一条I/O指令,启动输入设备输入数据,同时把状态寄存器中的忙/闲标志buy置为1.

(2)不断地循环测试busy(称为轮询)。当busy=1时,表示输入机尚未输完一个字(符),处理机应继续对该标志进行测试,直至busy=0,表明输入机已将输入数据送入控制器的数据寄存器中。

(3)处理机将数据寄存器中的数据取出,送入内存指定单元中,这样便完成了一个字(符)的I/O。接着再去启动读下一个数据,并置busy=1.

优点:

        处理器和外设的操作能通过状态信息得到同步。而且硬件结构比较简单

缺点:

        处理器效率较低,传输完全在处理器控制下完成,对外部出现的异常事件无实时响应能力

八、中断控制方式

1.中断控制方式的处理过程

        (1)处理器通过数据总线发出命令,启动外设工作,当前进程阻塞,调度程序调度其他进程;

        (2)外设数据准备好,,置为中断请求触发器

        (3)若此时接口中断屏蔽器状态为非屏蔽状态,则接口向处理器发送中断请求(IR)。

        (4)处理器接收中断请求,且中断为允许中断状态,则中断判优电路工作。

        (5)中断判优电路对优先级最高的中断请求给予响应(INTR),处理器中断正在执行的其他进程,转而执行中断服务程序。

2.优点:

        (1)处理器与外设并行工作,提高计算机的利用率

        (2)具有实时响应能力

        (3)可及时处理异常情况,提高计算机的可靠性

九、DMA方式

1.DMA方式控制原理

        DMA(直接访问内存)方式,是一种完全由硬件执行I/O数据交换的工作方式,数据交换不经过处理器,而直接在内存和I/O设备之间进行。

2.DMA方式传送过程

        (1)预处理阶段:由处理器执行I/O指令对DMAC(DMA控制器)进行初始化与启动。

        (2)数据传送阶段:由DMAC控制总线进行传送。当外设数据准备好,发DMA请求,CPU当前机器周期结束,响应DMA请求,DMAC从CPU接管总线的控制权,完成对内存寻址,决定数据传送的内存单元地址,对数据传送字进行计数,执行数据传送的操作。

        (3)后处理阶段:传送结束,DMAC向处理器发中断请求,报告DMA操作结束。处理器响应中断,转入中断服务程序,完成DMA结束处理工作,包括数据检验,决定是否结束传送等。

3.优点:

        操作均由硬件完成,传输速度快;处理器只在初始化和结束时参与,对数据传输基本不干预,可以减少大批量数据传送时处理器的开销;处理器与外设并行工作,效率高。

十、通道控制方式

1.引入通道的目的

        通道是一个特殊功能的处理器,它有自己的指令和程序,可以实现对外围设备的统一管理和外围设备与内存之间的数据传送。

        引入通道的目的是为了进一步减少数据输入输出对整个系统效率的影响。

2.通道的优点

        与DMA方式相比,通道方式增加了处理器与通道操作的并行处理能力;增加了通道之间或同一通道内各设备的并行操作能力;为用户提供了灵活增加外设的可能性。

3.通道的分类

        选择通道、数组多路通道、字节多路通道

4.通道的功能

        (1)接收处理器的指令,按指令要求与指定的外围设备进行通信

        (2)从内存读取属于该通道的指令,并执行通道程序,向设备控制器和设备发送各种命令

        (3)组织外围设备和内存之间进行数据传送,并根据需要提供数据缓存的空间,以及提供数据存入内存的地址和传送的数据量。

        (4)从外围设备得到设备的状态信息,形成并保存通道本身的状态信息,根据要求将这些状态信息送到内存的指定单元,供处理器使用。

        (5)将外围设备的中断请求和通道本身的中断请求,按序及时报告处理器。


原文地址:https://blog.csdn.net/2301_79875652/article/details/142687437

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!