精华内容
下载资源
问答
  • DMA方式与中断的区别

    2015-07-22 10:25:27
    这篇文章讲解了DMA方式和中断方式的区别,对于初学操作系统的学生来说是很好的学习和复习资料,有很大益处
  • DMA与普通中断方式的区别

    万次阅读 2016-06-30 22:46:04
    普通中断方式是在数据缓冲...总结:DMA方式不需CPU干预传送操作,仅仅是开始和结尾借用CPU一点时间,其余不占用CPU任何资源,中断方式是程序切换,每次操作需要保护和恢复现场 中断控制方式虽然在某种程度上解决了上述
    普通中断方式是在数据缓冲寄存器满后,发中断请求,CPU进行中断处理
    DMA方式则是以数据块为单位传输的,在所要求传送的数据块全部传送结束时要求CPU进行中断处理,大大减少了CPU进行中断处理的次数

    总结:DMA方式不需CPU干预传送操作,仅仅是开始和结尾借用CPU一点时间,其余不占用CPU任何资源,中断方式是程序切换,每次操作需要保护和恢复现场

    中断控制方式虽然在某种程度上解决了上述问题,但由于中断次数多,因而CPU仍需要花较多的时间处理中断,而且能够并行操作的设备台数也受到中断处理时间的限制,中断次数增多导致数据丢失。

    DMA方式和通道方式较好地解决了上述问题。这两种方式采用了外设和内存直接交换数据的方式。只有在一段数据传送结束时,这两种方式才发出中断信号要求CPU做善后处理,从而大大减少了CPU的工作负担。中断控制方式虽然在某种程度上解决了上述问题,但由于中断次数多,因而CPU仍需要花较多的时间处理中断,而且能够并行操作的设备台数也受到中断处理时间的限制,中断次数增多导致数据丢失。DMA方式和通道方式较好地解决了上述问题。这两种方式采用了外设和内存直接交换数据的方式。只有在一段数据传送结束时,这两种方式才发出中断信号要求CPU做善后处理,从而大大减少了CPU的工作负担。

    展开全文
  • DMA方式与中断控制方式以及通道方式的区别1、DMA方式和中断控制方式的主要区别2、DMA方式与通道方式的主要区别 1、DMA方式和中断控制方式的主要区别 ①、中断控制方式在每个数据传送完成之后中断CPU,而DMA控制方式...

    1、DMA方式和中断控制方式的主要区别

    ①、中断控制方式在每个数据传送完成之后中断CPU,而DMA控制方式则在所要求的传送的一批数据传送结束时中断CPU

    ②、中断控制方式中的数据传送在中断处理时由CPU控制完成,而DMA控制方式则在DMA控制器下完成。不过,在DMA的控制方式中,数据的传送方向,存放数据的内存始址及传送数据的长度等信息仍然由CPU控制

    ③、中断控制方式以CPU为核心,而DMA方式以存储器为核心,因此DMA方式可与CPU并行工作。

    ④、中断控制方式传输的数据以字节为单位,而DMA方式传送批量数据,其基本单位为数据块(通常一个数据块包含若干字节)。

    2、DMA方式与通道方式的主要区别

    ①与DMA控制方式相加,通道控制方式所需的CPU干预更少,并且一个通道可以控制多台设备,进一步减轻了CPU的负担。

    对通道来说,可以使用一些指令来灵活改变通道程序,这一点DMA控制方式却无法做到。

    ③DMA方式需要CPU来控制传输数据块的大小、传输的内存位置,而通道方式中这些信息是由通道控制的。

    展开全文
  • STM32 DMA方式和中断方式查询的区别

    千次阅读 2018-10-24 16:38:59
    要把外设数据读入内存或把内存数据传送到外设,一般都要通过CPU控制完成,如CPU程序查询或中断方式。利用中断进行数据传送,可以大大提高CPU利用率。  2: 中断传送 是由CPU通过中断服务程序来传送,每次要...

    1:
    DMA(DIRECT MEMORY ACCESS)
    即直接存储器存取,是指外部设备不通过CPU而直接与系统内存交换数据的接口技术。 


    要把外设的数据读入内存或把内存的数据传送到外设,一般都要通过CPU控制完成,如CPU程序查询或中断方式。利用中断进行数据传送,可以大大提高CPU的利用率。 


    2:
    中断传送
    是由CPU通过中断服务程序来传送,每次要保护断点,保护现场需要多条指令,每条指令要有取指和执行时间。为了充分利用CPU的高速性能和实时操作的要求,一般中断服务程序要求是尽量的简短,所以当要实现大量数据交换的情况,如从磁盘调入程序或图形数据,如果采用中断传送方式,必然会引起频繁中断的情况,需要执行很多与数据传送无关的中断指令,所以会大大降低系统的执行效率,无法提高数据传送速率。对于一个高速I/O设备,以及批量交换数据的情况,只能采用DMA方式,才能解决效率和速度问题。DMA在外设与内存间直接进行数据交换,而不通过CPU,这样数据传送的速度就取决于存储器和外设的工作速度。


    3:查询方式:主要用于CPU不太忙且传送速度不高的情况下。无条件传送方式作为查询方式的一个特例,主要用于对简单I/O设备的控制或CPU明确知道外设所处状态的情况下。 
    (2) 中断方式:主要用于CPU的任务比较忙的情况下,尤其适合实时控制和紧急事件的处理 
    (3) DMA方式(直接存储器存取方式):主要用于高速外设进行大批量数据传送的场合。




    ◆中断方式是在数据缓冲寄存区满后,发中断请求,CPU进行中断处理
    ◆DMA方式则是以数据块为单位传输的,在所要求传送的数据块全部传送结束时要求CPU进行中断处理,大大减少了CPU进行中断处理的次数
    ◆中断方式的数据传送是由设备到CPU再到内存,或者相反。
    ◆DMA方式的数据传送则是将所传输的数据由设备直接送入内存,或是由内存直接送到设备。

    展开全文
  • 【建议收藏】 计算机组成原理—DMA、...既然I/O主存有这么多种方式,那么DMA -----中断方式–通道方式各自有什么区别之处呢? I/O设备主机交换信息几种控制方式 程序查询方式 DMA方式 I/O通道方式 中断查询方式

    【建议收藏】 计算机组成原理—DMA、中断控制、I/O之间的联系与区别

    本篇文章主要是记录我对于计算机组成原理中所遇到的一些疑问和疑惑的记录-----主要用于考研的记录

    本章一共有几个知识点比较懵:

    ​ 1.为什么要引入这些东西?

    ​ 1.DMA到底是什么东西–书上大概能看懂,但是还是比较模糊

    ​ 2.既然I/O与主存有这么多种方式,那么DMA -----中断方式–通道方式各自有什么区别之处呢?

    I/O设备与主机交换信息的几种控制方式

    1. 程序查询方式
    2. DMA方式
    3. I/O通道方式
    4. 中断查询方式

    为什么要引入DMA,中断,I.O通道

    原因:

    早期计算机的I/O种类比较少,通常与主存交换信息都是通过CPU,而现代计算机的I/O种类较多,如果使用这种方式会使CPU的效率大大降低,如果想要提高资源利用率,那么我们就必须引入一些机制,来让整个机器工作效率变高。而不同的机制对于cpu资源利用率的效率也不同,而且适用的机型也不太一样,比如:通道结构的适合大型机,接口,DMA,适合小型和微小型机。

    通道、DMA、中断三种基本I/O方式均为外围设备和内存之间的输入/输出控制方式
    

    程序查询方式

    程序查询方式:查询查询,很明显就是通过一种机制取查询i/o设备是否需要进行与主机进行交换信息,那么这时候就需要我们的<font color="#ddd000>CPU通过程序不断的去进行查询,看I/O是否做好准备,从而控制I/O与主机交换信息。

    了解了基本的机制以后,那么我们就需要探讨他是如何具体工作的呢
    其实就分为单 I/O 和多个 I/O 的查询流程,多 I/O 的就是多个单 I/O 的组合、在结合优先级

    程序查询方式主要分三步来完成:
    1.查询状态标记
    2.准备就绪?
    3.交换数据

    在这里插入图片描述

    上述的三步是查询的流程,而下面是讲的程序的流程

    • 1.首先,这种方式在传输数据的时候会占用 CPU 寄存器,所以需要保存其寄存器的值
    • 2.然后由于传输往往是一批数据,所以需要设置 I/O 与主机交换的计数值
    • 3.设置预传输数据在主存缓冲区的首地址
    • 4.启动 I/O
    • 5.进行传输数据,由于当前主存有值了,所以主存地址也要进行修改,同时计数器的值每传一个值就减 1,直至 0,表明传输完成

    **⚠️注意:**CPU 一般不采用高程查询方式与磁盘交换信息

    DMA的概念

    **DMA(直接寄存器存储)😗*DMA是存储器直接访问,这是指一种高速的数据传输操作,允许在外部设备和存储器之间直接读写数据。DMA直接通过一个通路把数据传送到主存储器,无需cpu的参与.

    主要特点:

    • 直接通过一条数据通路直接与主存进行交换信息
    • 无需CPU的直接参与,大大提高了cpu资源利用率
    • I/O与CPU并行工作
    • 适合于高速 I/O 或辅存与主存之间交换信息

    工作机制:DMA由专门的硬件(DMA)控制下,实现高速外设和主存储器之间自动成批交换数据尽量减少CPU干预的输入/输出操作方式。
    相关名词:
    周期挪用:当 CPU 与 i/O 同时访问主存,CPU 必须把总线占有权让给 DMA 接口使用,即 DMA 采用周期挪用占用一个
    存储周期

    注意事项:

    • DMA传送虽然脱离CPU的控制,但并不是说DMA传送不需要进行控制和管理。通常是采用DMA控制器来取代CPU,负责DMA传送的全过程控制。
      -DMA 中的程序中断部件的作用是向 CPU 提出传输结束
    • DMA是必须利用中断的,否则CPU无法得到数据已经传输结束,当数据传输开始结束的时候,需要给CPU一个中断信号,CPU进行处理.这个就大大的节约了CPU的 资源。

    DMA接口的功能和组成

    1. 向CPU申请DMA传送
    2. 在CPU允许DMA工作时,处理总线控制权的转交
    3. 在DMA期间管理系统总线,控制数据传送
    4. 确定传送数据的起始地址和数据长队,修正数据传输过程中的数据地址和数据长度
    5. 在数据块传送结束后,给出DMA操作完成信号

    DMA接口的类型

    1. 选择型 DMA 接口:物理上连接多个设备,逻辑上只允许连接一个设备。适用于传输效率很高的设备
    2. 多路型 DMA 接口:物理上连接多个设备,逻辑上也允许连接多个设备同时工作,各个设备采用字节交叉方式通过 DMA 接口传输数据,适合于同时为多个 数据传输效率不高的设备服务

    DMA 工作流程

    • 1.预处理:
    1. cpu 给 dma 指明传送方向是输入还是输出
    2. 给 DMA 地址寄存送入设备号,启动设备
    3. 向 DMA 主存地址寄存器送入交换数据的主存起始地址
    4. 对计数器赋予交换数据的个数

    简单化理解就是,需要知道输入还是输出数据,需要知道给哪一个设备写入 or 写出,写入写出的数据在主存的说明地方,需要写出写出多少数据

    • 2.数据传送:
      为单位

    • 3.后处理
      中断服务程序,做 DMA 结束处理(包括,检验送入主存的数是否正确,决定是否使用 DMA 传送其他数据块,,测试传送过程是否正确

    在这里插入图片描述

    DMA 接口与系统连接方式

    • 具有公共请求线 的 DMA 请求方式
    • 独立的 DMA 请求 方式

    中断

    中断:中断方式是程序切换,每次操作需要保护和恢复现场中断次数多,CPU需要花较多的时间处理中断,中断次数多也会导致数据丢失

    引入中断的原因:
    1.适应 I/O 设备工作速度低问题
    2.将有用信息送至不受电源控制的存储系统中,带电源恢复后接着使用

    **中断方式的接口电路:

    • 中断请求触发器
    • 段屏蔽触发器
    • 排队器
    • 中断向量形成部件:由于 我们知道 cpu 响应了 I/O 中断以后,需要跳到中断服务程序里,那么此时,我们就需要知道服务程序的入口地址,而入口地址又是通过中断向量找到的,而中断向量又是由中断向量形成部件形成的

    中断处理程序的流程:

    • 1.中断请求
    • 2.中断判优:可能会有多个部件同时请求中断,此时需要判优
    • 3.中断响应:判优完成之后,就需要对 CPU 进行中断了
    • 4.中断服务:此次响应完以后,就需要跳到中断服务程序里,求执行某些操作
    • 5.中断返回:服务程序执行完成之后,就要返回原来的地方,继续执行原本的程序

    中断服务程序流程:

    • 1.保护现场。 (保护程序断点,保护通用寄存器和状态寄存器)
    • 2.中断服务程序:不同的 I/O 设备具有不同的中断服务程序
    • 3.恢复现场:将原程序中断时现场恢复到原来的寄存器中(采用取数指令或出栈指令)
    • 4:中断返回: 中断服务程序的最后一条指令通常是返回指令,时原程序的断点处,以便继续执行原程序。
    • ⚠️注意:计算机在执行中断的时候,可能会出现新的中断,这时候有两种方:一种对于新的中断不理睬,叫做*单重中断,另一种暂停现在执行的中断,转向新的中断,叫做多重中断*。
      这两种中断最大的区别就是开中断的位置的区别

    在这里插入图片描述

    I/O通道

    **概念:**I/O通道设备的引入实际上,I/O通道是一种特殊的处理机。它具:有执行I/O指令的能力,并通过执行通道(I/O)程序来控制I/O操作。但I/O通道又与一般的处理机不同,主要表现在以下两个方面:一是其指令类型单一,这是由于通道硬件比较简单,其所能执行的命令,主要局限于与I/O操作有关的指令;再就是通道没有自己的内存,通道所执行的通道程序是放在主机的内存中的,换言之,是通道与CPU共享内存。------摘自《百度百科》

    **通道:**就是来负责管理I/O设备以及实现主存与I/O设备之间交换信息的部件,他有自己的指令和程序,专门负责数据输入输出的传输控制(相当于cpu把传输控制下放给了通道),具有一些专用的通道指令,它受CPU的I/O指令启动I/O设备,执行通道指令,*组织I/O设备和主存交换信息向CPU报告中断

    通道控制方式:

    所需的CPU干预更少,并且一个通道可以控制多个设备-------进一步CPU的负担

    有专门的指令来改变通道程序

    DMA 与中断的比较

    在这里插入图片描述

    DMA、中断、通道的区别和联系

    DMA 中断 通道
    驱动方式 直接存储器存取方式的基本思想是在I/O设备和内存之间开辟直接的数据交换通路,彻底“解放” CPU 允许I/O设备主动打断CPU的运行并请求服务 DMA方式的发展,它可以进一步减少CPU的干预,即把对一个数据块的读(或写)为单位的干预,减少为对一组数据块的读(或写)及有关的控制和管理为单位的干预。
    适用场景 不需要CPU干预介入的控制器来控制内存与外设之间的数据交流的场合 I/O通道方式:适用于以字节为单位的干预,同时实现CPU、通道和I/O设备三者并行操作的场合 适用于高效场合
    处理方法 获取总线的3种方式分别为:暂停方式、周期窃取方式和共享方式 在系统中具有多个中断源的情况下,常用的处理方法有,多中断信号线法.中断软件查询法.雏菊链法、总线仲裁法和中断向量表法。 通道是一种通过执行通道程序管理I/O操作的控制器,它使主机与1/0操作之间达到更高的并行程度。
    展开全文
  • DMA 中断 查询三者的区别

    万次阅读 2014-09-12 09:36:43
    要把外设数据读入内存或把内存数据传送到外设,一般都要通过CPU控制完成,如CPU程序查询或中断方式。利用中断进行数据传送,可以大大提高CPU利用率。  2: 中断传送 是由CPU通过中断服务程序来传送,...
  • 为什么DMA方式的优先级高于程序中断方式 DMA传送方式的优先级高于程序中断,两者的区别主要表现在对CPU的干扰程度不同。 程序中断请求不但使CPU停下来,而且要CPU执行中断服务程序为中断请求服务,这个请求包括了对...
  • SG DMA与普通DMA(block DMA)的区别

    千次阅读 2018-01-10 14:10:34
    一、Scatter-gather DMA方式block DMA方式相对应一种DMA方式。在DMA传输数据过程中,要求源物理地址和目标物理地址必须是连续。但是在某些计算机体系中,如IA架构,连续存储器地址在物理上不一定是连续...
  • DMA是l/O设备主存之间由硬件组成直接数据通路,主要用于高速I/O设备主存之间成组数据传送。(外设快、慢了没意义。然后数据多,少了也没多大意义) 首先讲一下外设如果要求数据传输几种方式: 1.程序传送...
  • DMA 中断和查询三者的区别

    千次阅读 2017-03-14 10:21:45
    要把外设数据读入内存或把内存数据传送到外设,一般都要通过CPU控制完成,如CPU程序查询或中断方式。利用中断进行数据传送,可以大大提高CPU利用率。  2: 中断传送 是由CPU通过中断服务程序来传送,...
  • 要把外设数据读入内存或把内存数据传送到外设,一般都要通过CPU控制完成,如CPU程序查询或中断方式。利用中断进行数据传送,可以大大提高CPU利用率。  2: 中断传送 是由CPU通过中断服务程序来传送,每次要...
  • DMA copy和CPU copy

    2020-05-14 23:02:15
    DMA方式的数据传输由DMA控制器(DMAC)控制,在传输期间,CPU可以并发的执行其他任务。当DMA结束后,DMAC通过中断通知CPU数据传输已经结束,由CPU执行相应的中断服务程序进行后续处理。 CPU copy的区别 当程序...
  • 这里写目录标题数据传送方式中断传送方式非屏蔽中断中断过程中断指令中断向量表子程序与中断的区别BIOS、DOS中断基本步骤DOS常用功能1号功能2号功能9号功能0A号功能常用ASCII码 数据传送方式 程序控制方式 中断...
  • OS零碎知识整理(11)

    2020-05-12 13:16:52
    1.DMA方式与中断方式的主要区别是什么? (1)中断方式是在数据缓冲寄存器满之后发中断要求CPU进行中断处理; DMA方式则是在所要求转送的数据块全部传送结束时要求CPU进行中断处理。(大大减少了CPU进行中断处理的...
  • 目录接口1、接口概念2、接口作用3、接口基本组成IO端口地址编址方式输入输出数据传送控制方式(优缺点+应用场合)向量中断和非向量中断中断响应条件中断隐指令概念中断隐指令功能中断屏蔽中断升级中断...
  • 并发同步问题: 1.原子操作 自旋锁和信号量的区别 2.先后问题 两个半步的理念: 中断系统:中断要快、系统做事又要多 中断-->处理上半部 ...DMA方式、中断方式
  • DSP接口电路设计编程

    热门讨论 2009-09-26 11:30:23
     8.1 ADSP 21160早期SHARC DSP的区别  8.1.1 总体功能上的区别  8.1.2 第二套运算核(PEy)  8.1.3 两套运算部件  8.1.4 单指令多数据(SIMD)  8.1.5 循环缓冲模式  8.1.6 寄存器的广播式加载模式  8.1.7 ...
  • 2.简述同步控制方式和异步控制方式的定义、特点、优缺点和应用场合,并说明两者最核心的区别是什么? 3.什么是主设备,什么是从设备? 4.什么是总线周期? 5.控制器的分类 6.主机和外设的连接方式 7.直接程序...
  • 操作系统精髓设计原理答案

    热门讨论 2011-11-19 15:15:08
    中断驱动I/O:当处理器正在执行程序并遇到I/O相关指令时,它给相应I/O模块发布命令,并继续执行后续指令,直到后者完成,它将被I/O模块中断。如果它对于进程等待I/O完成来说是不必要,可能是由于后续指令...
  • 理解I/O设备和主机交换信息的控制方式(程序查询方式、程序中断方式DMA方式、通道方式、I/O处理机方式)以及各自的特点(包括他们之间的区别、联系以及对CPU工作效率的影响等)。程序查询方式过程特点优...
  • 中国石油大学(北京)网络继续教育...请说明它们的区别是什么。 3.(5分)在cache的写操作策略中,请比较写回法和全写法各自的优劣。 4.(5分)请给出DMA传送数据的方式描述(流程图),并比较DMA方式...
  • 第九章 I/O管理设备管理功能——设备控制器、通道I/O控制方式——基本思想、区别程序控制方式中断控制方式DMA方式通道方式缓冲管理(重点难点)单缓冲管理双缓冲管理缓冲池管理SPOOLing系统基本组成设备独立性——...
  • 微型计算机讲稿

    2004-10-15 18:46:45
    1. 伪指令指令性语句本质区别 2. 常用伪指令,常用表达式运算符 3. 功能调用参数及调用方法 4. 简单功能程序段分析及设计 第五章 存贮器及其接口 芯片扩展,地址范围,连线 第六章 输入/...
  • linux设备驱动学习-1 ...设备驱动底层硬件直接打交道, 按照硬件设备具体工作方式读写设备寄存器, 完成设备轮询、 中断处理、DMA 通信,进行物理内存向虚拟内存映射,最终使通信设备能够收...
  • 操作系统常见面试题

    2013-09-18 15:18:54
    一、进程线程的区别1、进程是拥有资源的基本单位,线程是进程的一个实体,是调度资源的基本单位。...二、I/O控制方式循环测试(轮询),中断,直接存储器访问(DMA),I/O通道方式三、就绪态阻塞态就绪:...
  • 40 为使工作在一般完全嵌套方式的8259A中断控制器能接受下一个中断请求,在中断服务程序结束处应( )。 A、直接执行IRET指令 B、先执行POP指令 C、发送普通EOI指令 D、不用任何处理,8259会自动进行有关处理 ...
  • 设备驱动概述

    2012-12-28 09:59:11
    设备驱动底层硬件直接打交道,按照硬件设备具体工作方式读写设备寄存器,完成设备轮询,中断处理,DMA通信,进行物理内存向虚拟内存映射,最终使通信设备能够收发数据,使显示设备能够显示文字和画面,使...

空空如也

空空如也

1 2
收藏数 33
精华内容 13
关键字:

dma与中断方式的区别