嵌入式Linux操作系统第9章 设备管理.ppt

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
设备管理的目标有两个:一个是按用户需求提出的要求接入外部设备,系统按一定算法分配和管理控制,而用户不必关心设备的实际地址和控制指令;另外,要尽量提高输入输出设备的利用率,例如发挥主机与外设以及外设与外设之间的真正并行工作能力。主要利用的技术有:中断技术、DMA技术、通道技术、缓冲技术。 CPU与外部设备存储器的连接和数据交换都需要通过接口设备来实现。前者被称为I/O接口,而后者则被称为存储器接口。存储器通常在CPU的同步控制下工作。接口电路比较简单,而I/O设备品种繁多,其相应的接口电路也各不相同。使用设备完成输入/输出的过程,就是主机与外部设备之间数据传送的过程。I/O管理最主要的任务是:完成用户提出的I/O请求、提高I/O速率以及提高设备的利用率,并能为更高层的进程方便地使用这些设备提供手段。 外部设备通常包含4组寄存器:状态寄存器、控制寄存器、数据输入寄存器和数据输出寄存器。这些寄存器都有自己的地址,每个地址叫做一个端口。外部设备这4组寄存器的作用分别为: 1、状态寄存器用来向处理器提供外部设备的工作状态。 2、控制寄存器是来管理外部设备工作模式的。 3、数据输入寄存器和数据输出寄存器都是数据缓存寄存器,即在外设与处理器传递数据时的数据暂存器。 为访问这些外部设备,系统必须为外设的这些寄存器分配地址空间,外设所占用的地址空间叫做I/O空间。 (1)轮询:对I/O设备的程序轮询的方式,是早期的计算机系统对I/O设备的一种管理方式。它定时对各种设备轮流询问一遍有无处理要求。轮流询问之后,有要求的,则加以处理。在处理I/O设备的要求之后,处理机返回继续工作。尽管轮询需要时间,但轮询不比I/O设备的速度要快得多,所以一般不会发生不能及时处理的问题。当然,再快的处理机,能处理的输入输出设备的数量也是有一定限度的。而且,程序轮询毕竟占据了CPU相当一部分处理时间,因此程序轮询是一种效率较低的方式,在现代计算机系统中已很少应用。 (2)中断:在I/O设备中断方式下,中央处理器与I/O设备之间数据的传输步骤如下: 在某个进程需要数据时,发出指令启动输入输出设备准备数据; 在进程发出指令启动设备之后,该进程放弃处理器,等待相关I/O操作完成。此时,进程调度程序会调度其他就绪进程使用处理器。 当I/O操作完成时,输入输出设备控制器通过中断请求线向处理器发出中断信号,处理器收到中断信号之后,转向预先设计好的中断处理程序,对数据传送工作进行相应的处理。 获得数据的进程转入就绪状态。在随后的某个时刻,进程调度程序会选中该进程继续工作。 I/O设备中断方式使处理器的利用率提高,且能支持多道程序和I/O设备的并行操作。不过,中断方式仍然存在一些问题。首先,现代计算机系统通常配置有各种各样的输入输出设备。如果这些I/O设备都同过中断处理方式进行并行操作,那么中断次数的急剧增加会造成CPU无法响应中断和出现数据丢失现象。其次,如果I/O控制器的数据缓冲区比较小,在缓冲区装满数据之后将会发生中断。那么,在数据传送过程中,发生中断的机会较多,这将耗去大量的CPU处理时间。 ?(3)DMA(直接内存存取):直接内存存取技术是指,数据在内存与I/O设备见直接进行成块传输。DMA有两个技术特征,首先是直接传送,其次是块传送。所谓直接传送,即在内存与IO设备间传送一个数据块的过程中,不需要CPU的任何中间干涉,只需要CPU在过程开始时向设备发出“传送块数据”的命令,然后通过中断来得知过程是否结束和下次操作是否准备就绪。 一个完整的DMA过程应包括:初始化、DMA请求、DMA响应、DMA传输、DMA结束5个阶段。DMA工作过程如图9.1所示: 图9.1 DMA工作过程 在DMA方式中,由于I/O设备直接同内存发生成块的数据交换,因此I/O效率比较高。由于DMA技术可以提高I/O效率,因此在现代计算机系统中,得到了广泛的应用。许多输入输出设备的控制器,特别是块设备的控制器,都支持DMA方式。 ?(4)通道:输入/输出通道是一个独立于CPU的,专门管理I/O的处理机,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些通道指令由CPU启动,并在操作结束时向CPU发出中断信号。输入/输出通道控制是一种以内存为中心,实现设备和内参内直接交换数据的控制方式。在通道方式中,数据的传送方向、存放数据的内存起始地址以及传送的数据块长度等都由通道来进行控制。另外,通道控制方式可以做到一个通道控制多台设备与内存进行数据交换。因而,通道方式进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程度。 把设备看成文件具有以下几个含义: (1)每个设备具有一个文件名称,应用程序可以通过设备的文件名来访问具体的设备,同时要受到文件系统访问权限控制机制的保护。 (2)设备在内核中应该对

文档评论(0)

132****9295 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档