导航:首页 > 器材知识 > 在设备管理中是由什么完成真正的IO操作

在设备管理中是由什么完成真正的IO操作

发布时间:2023-03-24 08:11:11

㈠ 在一般操作系统中,设备管理的主要功能包括是什么

设备中断处理,缓冲区管理,设备分配和去配,设备驱动调度,实现虚拟设备

㈡ I/O 操作的那些事儿:轮询 ,中断 , DMA ,通道(转载)

原文链接: https://www.cnblogs.com/niuyourou/p/12588407.html

I/O 设备是计算机的重要组成部分,介于处理器与 I/O 设备交互的复杂性,I/O 操作一直是高级语言开发者比较难掌握的一个技术点。

因为高级语言对 I/O 操作的封装基于操作系统提供的系统函数,而这些系统函数的调用方式又与其硬件层的结构与工作机制息息相关,所以想要彻底搞懂 I/O 操作的那些函数,必须对其基于的底层设备的工作方式有一定的了解。下面我们看一下 I/O 操作演变的过程。

1. 轮询方式的 I/O 操作

对I/O设备的程序轮询的方式,是早期的计算机系统对I/O设备的一种管理方式。它 定时对各种设备轮流询问一遍有无处理要求。轮流询问之后,有要求的,则加以处理。在处理I/O设备的要求之后,处理机返回继续工作 。尽管轮询需要时间,但轮询不比I/O设备的速度要快得多,所以一般不会发生不能及时处理的问题,I/O操作的时效性是可以保证的。但是处理器的速度再快,能处理的输入输出设备的数量也是有一定限度的。而且,程序轮询会占据CPU相当一部分处理时间,因此程序轮询是一种效率较低的方式,在现代计算机系统中已很少应用。燃敬顷

2. 中断方式的 I/O 操作

处理器与 I/O 设备间几个数量级的速度差异是 I/O 操作中存在的重要矛盾,是设备管理要解决的一个重要问题。为了提高整体效率,减少在程序直接控制 I/O 设备与处理器进行数据交互是很必要的。在I/O设备中断方式下,中央处理器与I/O设备之间数据的传输步骤如下:

⑴在某个进程需要数据时,发出指令启动输入输出设备准备数据
在进程发出指令启动设备之后,该进程放弃处理器,并由操作系统将进程置为阻塞状态,等待相关I/O操作完成 。此时皮陆, 进程调度程序会调度其他就绪进程使用处理器
⑶当I/O操作完成时, 输入输出设备控制器通过中断请求线向处理器发出中断信号,处理器收到中断信号之后,转向预先设计好的中断处理程序,对数据传送工作进行相应的处理
⑷数据准备完成后,OS将阻塞的进程唤醒,将其转入就绪状态。在随后的某个时刻,进程调度程序会选中该进程继续工作。

中断方式的优缺点

I/O设备中断方式 使处理器的利用率提高,且能支持多道程序和I/O设备的并行操作

不过,中断方式仍然存在一些问题。首先,现代计算机系统通常配置有各种各样的输入输出设备。 如果这些I/O设备都同过中断处理方式进行并行操作,那么中断次数的急剧增加会造成CPU无法响应中断和出现数据丢失现象

其次, 如果I/O控制器的数据缓冲区比较小 ,在缓冲区装满数据之后将会发生中断。那么,在数据传送过程中,发生中断的机会较多,这将耗去大量的CPU处理时间。

这里为了与下一种 I/O 方式进行区分,我们再说一下 I/O 设备的工作方式。我们先来了解一个硬件设备,设备控制器。

2.1 设备控制器

设备控制器是计算机中的一个实体,其主要职责是控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换。它是CPU与I/O设备之间的接口,它接收从CPU发来的命令,并去控制I/O设备工作,以使处理机从繁杂的设备控制事务中解脱出来。设备控制器是一个可编址的设备,当它仅控制一个设备时,它只有一个唯一的设备地址;若控制可连接多个设备时,则应含有多个设备地址,并使每一个设备地址对应一个设备。设备控制器有许多职责,我们只说与本次讲解相关的职责,即数据交换。

数据交换是指CPU与控制器之间、控制器与设备之间的数据交换。对于前者,是通过数据总线,由CPU并行地把数据写入控制器,或从控制器中并稿乎行地读出数据;对于后者,是设备将数据输入到控制器,或从控制器传送给设备。为此,在控制器中须设置数据寄存器。

我们上面所说的中断,便是设备控制器向处理器发出的中断,可以想象数据交互的过程:

1. 处理器需要磁盘上的 100M 数据,于是向磁盘处理器发出读取指令,然后进程阻塞,等待数据准备完毕。

2. 磁盘处理器接收到读取指令,执行寻道/寻址等磁盘操作找到目标数据,将数据读取到磁盘处理器的寄存器中。假设寄存器容量为 1M ,等待寄存器读满后向 CPU 发出中断。

3. CPU 接收到中断信号,唤醒进程执行数据读取指令,将数据从磁盘控制器的寄存器读取到内存。等待读取完成,没有数据可读取,继续进入阻塞状态。

4. 磁盘控制器再次将磁盘中的数据读取到寄存器,又是 1M ,再次向 CPU 发送中断。循环往复,直到将 10 M 数据读取完成。

可以看到,总体的优化思路是通过中断机制,将设备控制器从设备中读取数据到寄存器的时间节省了出来,CPU 不会繁忙等待在这段时间上,可以去做其它有意义的事情。别说,这个思路与锁的实现很相似,是繁忙等待到非繁忙等待的优化,避免了 CPU 的无效运算。

但是缺点刚刚也讲述的很清楚,频繁的中断会加大 CPU 的压力,尤其是一些设备控制器的寄存器比较小的情况下,一次 I/O 操作中进行中断的频率非常高。另外将数据由设备处理器读取到内核缓冲区的过程 CPU 是全程干预,一个字节一个字节进行读写的,这些操作并没有什么复杂的逻辑,由 CPU 直接处理显得有些浪费资源。

3. DMA 方式的I/O 操作

直接内存存取技术是指, 数据在内存与I/O设备间直接进行成块传输。该技术基于 DMA 设备,将 CPU 从简单的数据传输工作中解放了出来

DMA有两个技术特征,首先是 直接传送 ,其次是 块传送 。所谓直接传送,即在内存与IO设备间传送一个数据块的过程中,不需要CPU的任何中间干涉,只需要CPU在过程开始时向设备发出“传送块数据”的命令,然后通过中断来得知过程是否结束和下次操作是否准备就绪,当然这里的中断是 DMA 设备向 CPU 发出的而不是设备控制器。

DMA工作过程:

⑴当进程要求设备输入数据时,CPU把准备存放输入数据的内存起始地址以及要传送的字节数分别送入DMA控制器中的内存地址寄存器和传送字节计数器。

⑵发出数据传输要求的进行进入等待状态。此时正在执行的CPU指令被暂时挂起,进程进入阻塞状态。进程调度程序调度其他进程占据CPU。

⑶输入设备不断地窃取CPU工作周期(或者说与 CPU 争取内存总线),将数据缓冲寄存器中的数据源源不断地写入内存,直到所要求的字节全部传送完毕。

⑷DMA控制器在传送完所有字节时,通过中断请求线发出中断信号。CPU在接收到中断信号后,转入中断处理程序进行后续处理。

⑸中断处理结束后,CPU返回到被中断的进程中,或切换到新的进程上下文环境中,继续执行。

DMA与中断的区别

⑴中断方式是在设备控制器的数据缓冲寄存器满之后发出中断,由设备控制器发出,要求CPU进行中断处理,而DMA方式则是 在所要求传送的数据块全部传送结束时要求CPU 进行中断处理,由 DMA 设备发出 。这就极大的减少了CPU进行中断处理的次数。

⑵中断方式的 数据传送是在中断处理时由CPU控制完成的 ,而DMA方式则是 在DMA控制器的控制下,不经过CPU控制完成的 。这就排除了CPU因并行设备过多而来不及处理以及因速度不匹配而造成数据丢失等现象。

DMA方式的优缺点

在DMA方式中,由于I/O设备直接同内存发生成块的数据交换,因此I/O效率比较高。由于DMA技术可以提高I/O效率,因此在现代计算机系统中,得到了广泛的应用。许多输入输出设备的控制器,特别是块设备的控制器,都支持DMA方式。

通过上述分析可以看出,DMA控制器功能的强弱,是决定DMA效率的关键因素。DMA控制器需要为每次数据传送做大量的工作,数据传送单位的增大意味着传送次数的减少。另外,DMA方式窃取了时钟周期,因为其占据了访问内存的数据总线,CPU处理效率降低了,要想尽量少地窃取始终周期,就要设法提高DMA控制器的性能,这样可以较少地影响CPU处理效率。

总的来说 DMA 是一种比较令人满意的处理方式,通过 DMA 设备的引入将 CPU 从繁重的 I/O 操作中解放了出来。CPU 只需要发送读取请求和获得处理结果,而不需要关注 I/O 操作的具体传输过程。

4. 通道方式的 I/O

输入/输出通道是一个独立于CPU的,专门管理I/O的处理机,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些通道指令由CPU启动,并在操作结束时向CPU发出中断信号。输入/输出通道控制是一种以内存为中心,实现设备和内存直接交换数据的控制方式。在通道方式中,数据的传送方向、存放数据的内存起始地址以及传送的数据块长度等都由通道来进行控制。另外,通道控制方式可以做到一个通道控制多台设备与内存进行数据交换。因而,通道方式进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程度。

按照信息交换方式和所连接的设备种类不同,通道可以分为以下三种类型:

⑴字节多路通道

它适用于连接打印机、终端等低速或中速的I/O设备。这种通道以字节为单位交叉工作:当为一台设备传送一个字节后,立即转去为另一它设备传送一个字节。

⑵选择通道

它适用于连接磁盘、磁带等高速设备。这种通道以“组方式”工作,每次传送一批数据,传送速率很高,但在一段时间只能为一台设备服务。每当一个I/O请求处理完之后,就选择另一台设备并为其服务。

⑶成组多路通道

这种通道综合了字节多路通道分时工作和选择通道传输速率高的特点,其实质是:对通道程序采用多道程序设计技术,使得与通道连接的设备可以并行工作。

在通道控制方式中,I/O设备控制器(常简称为I/O控制器)中没有传送字节计数器和内存地址寄存器,但多了通道设备控制器和指令执行部件。CPU只需发出启动指令,指出通道相应的操作和I/O设备,该指令就可启动通道并使该通道从内存中调出相应的通道指令执行。一旦CPU发出启动通道的指令,通道就开始工作。I/O通道控制I/O控制器工作,I/O控制器又控制I/O设备。这样,一个通道可以连接多个I/O控制器,而一个I/O控制器又可以连接若干台同类型的外部设备。由于通道和控制器的数量一般比设备数量要少,因此,如果连接不当,往往会导致出现“瓶颈”。故一般设备的连接采用交叉连接,这样做的好处是:

① 提高系统的可靠性:当某条通路因控制器或通道故障而断开时,可使用其他通路。

② 提高设备的并行性:对于同一个设备,当与它相连的某一条通路中的控制器或通道被占用时,可以选择另一条空闲通路,减少了设备因等待通路所需要花费的时间。

通道处理机

通道相当于一个功能单纯的处理机,它具有自己的指令系统,包括读、写、控制、转移、结束以及空操作等指令,并可以执行由这些指令编写的通道程序。

通道的运算控制部件包括:

① 通道地址字(CAW):记录下一条通道指令存放的地址,其功能类似于中央处理机的指令寄存器。

② 通道命令字(CCW):记录正在执行的通道指令,其作用相当于中央处理机的指令寄存器。

③ 通道状态字(CSW):记录通道、控制器、设备的状态,包括I/O传输完成信息、出错信息、重复执行次数等。

通道一般需要与主机共享同一个内存,以保存通道程序和交换数据。通道访问内存采用“周期窃用”,方式。采用通道方式后,输入/输出的执行过程如下:

CPU在执行用户程序时遇到I/O请求,根据用户的I/O请求生成通道程序(也可以是事先编好的)。放到内存中,并把该通道程序首地址放入CAW中。

然后,CPU执行“启动I/O”指令,启动通道工作。通道接收“启动I/O”指令信号,从CAW中取出通道程序首地址,并根据此地址取出通道程序的第一条指令,放入CCW中;同时向CU发回答信号,通知“启动I/O”指令完成完毕,CPU可继续执行。

通道开始执行通道程序,进行物理I/O操作。当执行完一条指令后,如果还有下一条指令则继续执行;否则表示传输完成,同时自行停止,通知CPU转去处理通道结束事件,并从CCW中得到有关通道状态。总之,在通道中,I/O运用专用的辅助处理器处理I/O操作,从而减轻了主处理器处理I/O的负担。主处理器只要发出一个I/O操作命令,剩下的工作完全由通道负责。I/O操作结束后,I/O通道会发出一个中断请求,表示相应操作已完成。

通道的思想是从早期的大型计算机系统中发展起来的。在早期的大型计算机系统中,一般配有大量的I/O设备。为了把对I/O设备的管理从计算机主机中分离出来,形成了I/O通道的概念,并专门设计出I/O通道处理机。I/O通道在计算机系统中是一个非常重要的部件,它对系统整体性能的提高起了相当重要的作用。不过,随着技术不断的发展,处理机和I/O设备性能的不断提高,专用的、独立I/O通道处理机已不容易见到。但是通道的思想又融入了许多新的技术,所以仍在广泛地应用着。由于光纤通道技术具有数据传

输速率高、数据传输距离远以及可简化大型存储系统设计的优点,新的通用光纤通道技术正在快速发展。这种通用光纤通道可以在一个通道上容纳多达127个的大容量硬盘驱动器。显然,在大容量高速存储应用领域,通用光纤通道有着广泛的应用前景。

对于前三种 I/O 交互方式来说,特点如下:

1. 都需要 CPU 的介入:轮询方式需要 CPU 完全介入;中断方式需要 CPU 完全介入,但 CPU 在此期间进行非繁忙等待,可以做其它事情;DMA 方式需要 CPU 在传输开始和结束时介入。

2. 需要的硬件支持:轮询方式只需要最基本的处理器即可;中断方式需要增加中断控制器;DMA 方式需要 DMA 处理器和中断控制器。

这三种方式适合外设不太多的小型机,对于 I/O 设备多,输入输出繁杂的系统,占用 CPU 时间太多,硬件接口太复杂。通道技术使得 CPU 可以在有限的 I/O 指令下管理众多的外部设备,代替 CPU 控制和管理外设。

CPU 和 I/O 设备之间增加了设备控制器后 已经可以大大减少CPU 对 I/O 的干涉 ,使得CPU 从繁多的io处理中解脱出来,但是当主机所配置的外设备很多时,CPU 负担还很重,为此 CPU 和设备管理器之间又加入了 I/O 通道 其主要目的是为了建立独立的io操作,不仅使得数据的传送独立于 CPU ,还希望有关 I/O 设备的组织/管理以及结束处理尽量独立,简单一点地说就是找出一种东西可以有简单的数据处理能力来分担 CPU 的任务,使得 CPU 专门来处理那些高级的数据 ,这些的简单的数据的处理就交给这个东西来处理这个东西就是 I/O 通道 ,I/O 通道属于硬件但是有执行简单指令的能力。DMA 控制器也是类似的硬件设备,但 DMA 控制器没有专门的处理器,虽然DMA 无需 CPU 进行外设与内存的数据交换工作,但是这只是减少了 CPU 的负担。因而DMA 中,输入输出的初始化仍然要由 CPU 来完成。

DMA的好处在于将CPU中断从每个字符中断减少为每个缓冲区中断,从而如果输出字符很多时,能带来可观的性能提升。另一方面,DMA 控制器往往比CPU慢很多,如果DMA 控制器不能全速驱动输出设备或者当等待DMA时CPU经常无其他任务可做,那么Interrupt-Driven I/O或Programmed I/O可能更好。但是,大多数情况下,DMA都是更好的。通道有自己的指令系统,是一个协处理器,一般用在大型计算机系统中(不是大型机)。通道实质是一台能够执行有限的输入输出指令,并能被多台外设共享的小型 DMA 专用处理机。广义上讲,DMA也属于通道。那么 DMA 于 通道相比:
共同点:都能实现IO设备和内存之间建立数据直传通路;

不同点:
DMA只能实现固定的数据传送控制,而通道有自己的指令和程序,具有更强的独立处理数据输入和输出的能力。
DMA只能控制一台或者少数几台同类设备,而一个通道可以控制多台同类或者不同的设备。

㈢ 计算机里的I/O是什么东西啊

I/O输入/输出(Input/Output),分为IO设备和IO接口两个部分。I/O也就是输入输出地址。每个设备都会有一个专用的I/O地址,用来处理自己的输入输出信息。I/O地址绝对不能重复,如果两个设备的I/O地址有冲突,系统硬件就不能正常工作。

输入输出I/O流可以看成对字节或者包装后的字节的读取就是拿出来放进去双路切换;实现联动控制系统的弱电线路与被控设备的强电线路之间的转接、隔离,以防止强电窜入系统,保障系统的安全;

与专线控制盘连接,用于控制重要消防设备(如消防泵、喷淋泵、风机等),一只模块可控制一台大型消防设备的启、停控制。

IN/OUT指令的寻址方式有直接寻址和间接寻址两种。当端口地址<=0FFH时,采用直接寻址方式。当端口地址>0FFH时,要采用间接寻址方式,使用DX作为I/O间接地址寄存器,DX中存放I/O端口地址。

当然,端口地址<=0FFH时也可以间接寻址。IN/OUT指令只能在端口和AL寄存器之间或端口和AX寄存器之间传送信息。选择Al还是AX,取决于端口的位数和数据总线宽度。

(3)在设备管理中是由什么完成真正的IO操作扩展阅读:

现代计算机系统中配置了大量的外围设备,即I/O设备。依据它们的工作方式的不同,通常进行如下分类:

(1)字符设备(character device),又叫做人机交互设备。用户通过这些设备实现与计算机系统的通信。它们大多是以字符为单位发送和接受数据的,数据通信的速度比较慢。

例如,键盘和显示器为一体的字符终端、打印机、扫描仪、包括鼠标等,还有早期的卡片和纸带输入和输出机。含有显卡的图形显示器的速度相对较快,可以用来进行图像处理中的复杂图形的显示。

(2)块设备(block device),又叫外部存储器,用户通过这些设备实现程序和数据的长期保存。与字符设备相比,它们是以块为单位进行传输的,如磁盘、磁带和光盘等。块的常见尺寸为512~32768B之间。

(3)网络通信设备。这类设备主要有网卡、调制解调器等,主要用于与远程设备的通信。这类设备的传输速度比字符设备高,但比外部存储器低。

这种分类的方法并不完备,有些设备并没有包括。例如,时钟既不是按块访问,也不是按字符访问,它所做的是按照预先规定好的时间间隔产生中断。但是这种分类足以使操作系统构造出处理I/O设备的软件,使它们独立于具体的设备。

I/O设备软件:

①用户层软件

实现与用户交互的接口,用户可直接调用在用户层提供的、与I/O操作有关的库函数,对设备进行操作。

②设备独立软件

用于实现用户程序与设备驱动器的统一接口、设备命名、设备的保护以及设备的分配与释放等,同时为设备管理和数据传送提供必要的存储空间。

③设备驱动程序

与硬件直接相关,用于具体实现系统对设备发出的操作指令,驱动I/O设备工作的驱动程序。

④中断处理程序

用于保存被中断进程的CPU环境,转入相应的中断处理程序进行处理,处理完后再恢复被中断进程的现场后,返回到被中断进程。

㈣ 新代系统IO原理

有以下几点:
1、用户层I/O软件,实现与用户交互的接口,用户可直接调用该层所提供的、与IO操作有关的库函数对设备进行枯棚操山败蔽作。
2、设备独立性软件,用于实现用户程序与设备驱动器的统接口、设备命名、设备的保护以及设备的分配与释放等,同时为设备管理和数据传送提供必要的存储空间。
3、设备驱动程序逗州,与硬件直接相关,用于具体实现系统对设备发出的操作指令,驱动I/O设备工作的驱动程序。
4、中断处理程序,用于保存被中断进程的CPU环境,转入相应的中断处理程序进行处理,处理完毕再恢复被中断进程的现场后,返回到被中断的进程。

㈤ I/O与磁盘调度是什么

外部设备分类
(1)按系统和用户分:系统设备、用户设备
(2)按输入输出传送方式分(UNIX或Linux操作系统):字符型设备、块设备
(3)按资源特点分:独享设备、共享设备、虚拟设备
(4)按设备硬件物理特性分:顺序存取设备、直接存取设备
(5)按设备使用分:物理设备、逻辑设备、伪设备
(6)按数据组织分:块设备、字符设备
(7)按数据传输率分:低速设备、中速设备、高速设备
设备管理的目标与任务
设备管理的目标:
(1)按用户需求提出的要求接入外部设备,系统按一定算法分配和管理控制,而用户不必关心设备的实际地址和控制指令;
(2)尽量提高输入输出设备的利用率,例如发挥主机与外设以及外设与外设之间的真正并行工作能力。主要利用的技术有:中断技术、DMA技术、通道技术、缓冲技术。
设备管理的任务:
(1)动态掌握并记录设备的状态
(2)分配设备和释放
(3)对输入输出缓冲区进行管理
(4)控制和实现真正的输入输出操作
(5)提供设备使用的用户接口
(6)在一些较大系统中实现虚拟设备技术
通道(channel):计算机系统中能够独立完成输入输出操作的硬件装置,也称为“输入输出处理机”。
虽然在CPU与I/O设备之间增加了设备控制器,但CPU的负担仍很重。为此,在CPU和设备控制器之间又增设了I/O通道。其目的是使一些原来由CPU处理的I/O任务转由通道来承担,从而把CPU从繁杂的I/O任务中解脱出来。
CPU并不直接操作外围设备,他连接通道(I/O处理机),通道连接设备控制器,设备控制器连接设备。CPU只需把“I/O"设备启动,并给出相关的操作要求。然后就由通道来处理输入输出事宜,做完后报告CPU。
根据信息交换方式的不同,可把通道分成以下三种类型:
字节多路通道(Byte Multiplexor Channal)
数组选择通道(Block Selector Channal)
数组多路通道(Block Multiplexor Channal)
中断技术
中断(Interrupt)是指计算机在执行期间,系统内发生非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行响应的事件处理程序。待处理完毕后又返回原来中断处继续执行或调度迟稿新的程序执行的过程。中断一般可分成软件中断和硬件中断。
中断方式(interrupt)被用来控中旦羡制外围设备和内存与CPU之间的数据传送。这种方式要求CPU与设备(或控制器)之间有相应的中断请求线,而且在设备控制器的控制状态寄存器的相应的中断允许位。
1.数据输入操作步骤:
l进程需要数据时,通过CPU发出“start”指令启动外围设备准备数据
l在进程发出指令启动设备后,该进程放弃处理机,等待输入完成。
l当输入完成时,I/O控制器通过中断请求线向CPU发出中断请求。
l在以后的某个时刻,进程调度程序选中提出请求并得到数据的进程,该进程从约定的内存特定单元中取出数据继续工作。
2.中断方式的缺点:
1)由于在一次数据传送过程中,发生中断次数较多。这将耗去大量CPU处理时间。
2)当设备把数据放入数据缓冲寄存器并发出中断信号之后,CPU有足够的时间在下一个(组)数据进入数据缓冲寄存器之前取走数据。如果外设的速度也非常快,则有可能造成数据缓冲寄存器的数据丢卖拍失。
DMA技术
DMA 是Direct Memory Access的缩写,其意思是“存储器直接访问”。它是指一种高速的数据传输操作,允许在外部设备和存储器之间直接读写数据,即不通过CPU,也不需要 CPU干预。整个数据传输操作在一个称为“DMA控制器”的控制下进行的。CPU除了在数据传输开始和结束时作一点处理外,在传输过程中CPU可以进行其它的工作。这样,在大部分时间里,CPU和输入输出都处在并行操作。因此,使整个计算机系统的效率大大提高。
缓冲技术
缓冲指用来暂存数据的缓冲存储器。
缓冲技术是二种不同速度的设备之间传输信息时平滑传输过程的一种常用手段。它可提高外设利用率,尽可能使外设处于忙状态。引入缓冲的主要原因,可归结为以下几点:
1. 改善CPU与I/O设备间速度不匹配的矛盾
2. 可以减少对 CPU的中断频率,放宽对中断响应时间的限制
3. 提高 CPU和 I/O设备之间的并行性
根据I/O控制方式,缓冲的实现方法有两种:一种是采用专用硬件缓冲器;另一种是在内存划出一个具有n个单元的专用缓冲区,以便存放输入/输出的数据。内存缓冲区又称软件缓冲。
根据系统设置的缓冲器的个数,可把缓冲技术分为:单缓冲、双缓冲、多缓冲和缓冲池
假脱机技术(SPOOLing)
SPOOLing,即外围设备联机并行操作,它是一种速度匹配技术、也是一种虚拟设备技术(用一种物理设备模拟另一类物理设备,使各作业在执行期间只使用虚拟的设备而不直接使用物理的独占设备。这种技术可使独占的设备变成可共享的设备,使得设备的利用率和系统效率都能得到提高)。
1.SPOOL系统的组成
SPOOLing系统主要有以下三部分组成:
(1)输入井和输出井
它们是在磁盘上开辟的两个大缓冲区。输入井是模拟脱机输入时的磁盘,用于收容I/O设备输入的数据;输出井是模拟脱机输出时的磁盘,用于收容用户程序的输出数据。
(2)输入缓冲区和输出缓冲区
在内存中要开辟两个缓冲区,其中输入缓冲区用于暂存由输入设备送来的数据,以后再传送到输入井;输出缓冲区用于暂存从输出井送来的数据,以后再传送给输出设备。
(3)输入进程SPi和输出进程Spo
进程Spi模拟脱机输入时的外围控制机,将用户要求的数据从输入机通过输入缓冲区再送到输入井。当CPU需要输入数据时,直接从输入井读入内存。Spo进程模拟脱机输出时的外围控制机,把用户要求输出的数据先从内存送到输出井,待输出设备空闲时,再将输出井中的数据经过输出缓冲区送到输出设备上。
2、实现虚拟设备的条件
硬件条件:大容量磁盘;中断装置和通道;中央处理器与通道并行工作的能力。
软件条件:要求操作系统采用多道程序设计技术。
3、虚拟设备的实现原理
对于多道程序,输入时将一批作业的信息通过输入设备预先传送到磁盘上。输出时将作业产生的结果也全部暂时存在磁盘上而不直接输出,直到一个作业得到全部结果而执行结束时再行输出。(就是用磁盘来模拟输入机和打印机的工作,把它们的工作内容先保存起来,然后一并执行)
磁盘调度
对磁盘进行驱动调度的目的:尽可能的降低多个访问者执行输入输出操作的总时间,增加单位时间内的输入输出操作次数,有利于系统效率的提高。
磁盘的驱动调度:在多道程序设计系统中,同时有多个访问者请求磁盘操作,此时系统采用一定的调度策略来决定各等待访问者的执行次序,所以系统决定等待磁盘访问者的执行次序的工作就是磁盘的“驱动调度”。
磁盘调度分为移臂调度和旋转调度。
根据访问者指定的柱面位置来决定执行次序的调度称“移臂调度”;
当移动臂定位后,如有多个访问者等待访问该柱面时,根据延迟时间来决定执行次序的调度称为“旋转调度”。
移臂调度算法包括以下四种:
1)先来先服务算法(FCFS);
2)最短寻找时间优先调度算法(SSTF);
3)电梯调度算法(SCAN);
4)单向扫描调度算法(CSCAN)。

㈥ I/O控制方式有哪几种

I/O控制方式主要有程序查询方式、中断方式、DMA方式和I/O通道控制方式。

  1. 程序查询方式也称为程序轮询方式,该方式采用用户程序直接控制主机与外部设备之间输入/输出操作。CPU必须不停地循环测试I/O设备的状态端口,当发现设备处于准备好(Ready)状态时,CPU就可以与I/O设备进行数据存取操作。

  2. 中断方式。当I/O设备结束(完成、特殊或异常)时,就会向CPU发出中断请求信号,CPU收到信号就可以采取相应措施。当某个进程要启动某个设备时,CPU就向相应的设备控制器发出一条设备I/O启动指令,然后CPU又返回做原来的工作。

  3. DMA(直接内存存取)方式。DMA方式也称为直接主存存取方式,其思想是:允许主存储器和I/O设备之间通过“DMA控制器(DMAC)”直接进行批量数据交换,除了在数据传输开始和结束时,整个过程无须CPU的干预。

  4. I/O通道控制方式。通道(Channel)也称为外围设备处理器、输入输出处理机,是相对于CPU而言的。是一个处理器。也能执行指令和由指令的程序,只不过通道执行的指令是与外部设备相关的指令。是一种实现主存与I/O设备进行直接数据交换的控制方式。

拓展资料:

i/o系统即输入输出系统,操作系统中负责管理输入输出设备的部分称为i/o系统,完成设备管理功能,包括外设编址,数据通路的建立,向主机提供外设的状态信息等。i/o系统的组成有:i/o设备,设备控制器及i/o操作有关的软硬件。

参考资料:网络I/O系统

㈦ 计算机采用控制I / O设备的四个方法是什么

程序I/O方式、中断驱动I/O控制方式、DMA(直毕冲接内存访问)I/O控制旅裤方式拆数简、I/O通道控制方式

㈧ 设备管理的主要任务是控制设备和cpu之间进行什么操作

设备管理的主要任务是控制设备和CPU之间进行I/O操作。
您也可以试试搭载了第六内代智能英特尔酷睿处理容器的产品,创新性的使用模式,如实感技术,姿势控制,语音识别,2D/3D影像,突破传统PC使用体验,无论办公学习、畅玩游戏或者观看超高清影像播放,均得心应手,引领产品创新。

㈨ 网络技术中所谓的“I/O”是指什么

1、概念I/O系统,英文全称为“Input output system”,中文全称为“输入输出系碧帆统”,由输入输出控制系统和外围设备两部分组成,是计算机系统的重要组成部分。在计算机系统中,通常把处唯庆理器和主存储器之外的部分称为输入输出系统。


2、作用:对指定外设进行i/o操作,同时完成许多其他的控制。包括外设编址,数据通路的建立,向主机提供外设的状态信息等。


3、结构输入输出控制系统:在计算机中对外围设备实施控制的系统。主要功能是:向外围设备发送动作命令、控制输入输出数据的传送、检测外围设备的状态。输入输出设备必须通过该系统同中央处理器和主存储器交换数据。


输入输出控制系统按控制方式分为中央处理器程序控制、直接存储器存取控制、输入输出处理机控制三种。输入输出处理机控制又由通道控制方式和外围处理机控制方式组成。


4、应用:现代计算机系统中配置了大量的外围设备,即I/O设备。依据它们的工作方式的不同,通常进行如下分类。


(1)字符设备(character device),又叫做人机交互设备。用户通过这些设备实现与计算机系统的通信。它们大多是以字符为单位发送和接受数据的,数据通信的速度比较慢。例如,键盘和显示器为一体的字符终端、打印机、扫描仪、包括鼠标等,还有早期的卡片和纸带输入和输出机。含有显卡的图形显示器的速度相对较快,可以用来进行图像处理中的复杂图形的显示。


(2)块设备(block device),又叫外部存储器,用户通过这些设备实现程序和数据的长期保存。与字符设备相比,它们是以块为单位进行传输的,如磁盘、磁带和光盘等。块的常见尺寸为512~32768B之间。


(3)网络通信设备。这类设备主要有网卡、调制解调器等,主要用于与远程设备的通信。这类设备的传输速度比字符设备高,但比外部存储器低。这种分类的方法并不完备,有些设备并没有包括。例如,时钟既不是按块访问,也不是按字符访问,它所做的是按照预先规定好的时间间隔产生中断。但是这种分类足以使操作系统构造出处指慧握理I/O设备的软件,使它们独立于具体的设备。



(9)在设备管理中是由什么完成真正的IO操作扩展阅读:


I/O接口的功能是负责实现CPU通过系统总线把I/O电路和 外围设备联系在一起,按照电路和设备的复杂程度,I/O接口的硬件主要分为两大类:


(1)I/O接口芯片


这些芯片大都是集成电路,通过CPU输入不同的命令和参数,并控制相关的I/O电路和简单的外设作相应的操作,常见的接口芯片如定时/计数器、中断控制器、DMA控制器、并行接口等。


(2)I/O接口控制卡


有若干个集成电路按一定的逻辑组成为一个部件,或者直接与CPU同在主板上,或是一个插件插在系统总线插槽上。


按照接口的连接对象来分,又可以将他们分为串行接口、并行接口、键盘接口和磁盘接口等。

㈩ 操作系统——设备管理io组成

io系统的组成

    需要用于输入、输出和存储信息的设备;
    需要相应的设备控制器;
    控制器与CPU连接的高速总线;
    有的大中型计算机系统,配置I/O通道;

I/O系统的基本功能

    1)主要功能:

        1.隐藏物理设备细节,方便用户
           用户使用抽象的I/O命令即可

        2.实现设备无关性,方便用户
           用户可用抽象的逻辑设备名来使用设备,同时也提高了OS的可移植性和易适应性。

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

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

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

        6.错误处理

I/O系统的层析结构和模型

    层次结构:系统中的设备管理模块分为若干层次

    层次间操作:下层为上层提供服务,完成输入输出功能中的某些子功能,并屏蔽功能实现的细节。

I/O软件系统的层次

.中断处理程序:处于IO系统的底层,直接与硬件交互

.设备驱动程序:

     处于底层,是进程和控制器之间的通信程序

     功能:将上层发来的抽象IO请求,转化为IO设备的具体命令和参数,并把它装入寄存器中

.设备独立性软件

I/O系统接口:块设备接口,流设备接口,网络通信接口

设备控制器

设备并不直接与CPU通信

计算机中的一个实体——“设备控制器”负责控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换。

控制器是CPU与I/O设备之间的接口,作为中间人接收从CPU发来的命令,并去控制I/O设备工作,以使处理机脱离宽斗繁杂的设备控制事务。

常作成接口卡插入计算机

可编址,不同类:控制一个设备时只有一个地址,若连接多个设备则含有多个设备地址;管理的复杂性因设备而异,分为字符设备控制器、块控制器

基本功能

1.接收和识别CPU命令(控制寄存器:存放命令和参数)

2.标识慎差磨和报告设备的状态(状态寄存器)

3.数据交换(数据寄存器)

4.地址识别(控制器识别设备地址、寄存器地址。地址译码器)

5.数据缓冲(协调I/O与CPU的速度差距)

6.差错控制

I/O逻辑

通过一组控制线与处理机交互

cpu要启动一个设备时,将启动命令发送给控制器;

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

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

实现CPU与设备控制器之间的通信(共有三类信号线)

数据线:数据线通常与寄存器相连(数据寄存器,控制/状态寄存器)

地址线

控制线

I/O通道

当设置通道后,CPU只需要向通道发送一条I/O指令即可不在干预后续操作,通道形成通道程序,执行I/O操作,完成后向CPU发中断信号。

主要目的:

建立更独立(数据传送的独立,I/O操作的组织、管理及结束也尽量独立)的I/O操作,解放CPU。

实际上I/O通道是一种特殊的处理机(指令类型单一,只用于I/O操作,通道没有内存,他与CPU共享内存)

通道类型

根据其控制的外围设备的不同类型,信息交换方式也可分为:

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

瓶颈问题:由于通道价格昂贵,致使数量较少使它成为I/O系统的瓶颈,进而造成系统吞吐量的下降

字节多路通道

一个通道常通过多个子通道连接多个设备控制器

多个设备,通过非分配型子通道以字节为单位交叉轮流使用主通道传输自己的数据。

阅读全文

与在设备管理中是由什么完成真正的IO操作相关的资料

热点内容
儿童自动系鞋带装置扣 浏览:756
秋千是用什么器材做的 浏览:728
机械b2b网站都有哪些 浏览:748
汽车漆面仪器有哪些 浏览:488
硫酸铵用什么阀门 浏览:607
博罗县福田富贸塑胶五金制品厂 浏览:538
胃反流超声波检测怎么做 浏览:16
测量仪器怎么对标 浏览:319
海马7x仪表台怎么拆 浏览:523
车辆仪表sermvce什么意思 浏览:904
电力剩余电流保护装置作用 浏览:510
怎么判断轴承的直径 浏览:681
博世冲击钻电机轴承怎么拆 浏览:643
易微联设备怎么联siri 浏览:766
暖气的阀门32尺寸行吗 浏览:400
地暖分集水器处用什么阀门 浏览:315
河南中药材烘干设备哪里有卖 浏览:256
惠普如何添加音频设备 浏览:617
巨龙机械铸造有限公司怎么样 浏览:637
如何重置仪表盘报警TT 浏览:889