I/O处理器与DMA控制器与I/O通道

I / O I/O I/O处理器与 D M A DMA DMA控制器的区别

  1. I / O I/O I/O处理器有自己的指令集,而 D M A DMA DMA没有。
    总结来说I/O处理器通常比DMA控制器更强大,因为它可以执行更复杂的逻辑和计算任务。它具备完整的指令集和执行单元,能够执行更多功能和算法,如对数据进行处理、转换、压缩等操作,而 D M A DMA DMA就是把数据搬到内存里,相当于 I / O I/O I/O有一个解码功能,而 D M A DMA DMA不太有。

  2. I / O I/O I/O处理器与 C P U CPU CPU集成在芯片内并且属于协处理器,而 D M A DMA DMA位于主板上。

I / O I/O I/O处理器与 D M A DMA DMA的应用场景:

在计算机系统中,当涉及到数据传输和处理的时候,可以根据具体需求和场景选择使用 I / O I/O I/O处理器或 D M A DMA DMA技术。

  • 一般来说,以下情况可以考虑使用 I / O I/O I/O处理器:

( 1 ) . (1). (1).处理较简单的 I / O I/O I/O操作:例如,读取键盘输入、鼠标操作、简单的控制设备等。
( 2 ) . (2). (2).需要对输入或输出进行实时处理或转换:例如,音频或视频流的实时编解码、格式转换等。
( 3 ) . (3). (3).需要进行较为复杂的协议处理和管理:例如, U S B 、 E t h e r n e t USB、Ethernet USBEthernet等通信协议的处理和控制。

  • 而以下情况可以考虑使用 D M A DMA DMA技术:

( 1 ) . (1). (1).需要高速数据传输: D M A DMA DMA技术可以直接将数据从外设设备传输到内存,或者从内存传输到外设设备,无需 C P U CPU CPU的干预,可以实现高速、高效的数据传输。
( 2 ) . (2). (2).大规模数据传输:当需要大量的数据传输时,使用 D M A DMA DMA可以减轻 C P U CPU CPU的负担,提高系统的性能和效率。例如,硬盘读写、图形渲染等场景。
( 3 ) . (3). (3).需要并行处理多个 I / O I/O I/O请求: D M A DMA DMA控制器可以同时处理多个 I / O I/O I/O请求,提高并发处理能力。
需要根据具体的应用场景和需求来选择使用 I / O I/O I/O处理器还是 D M A DMA DMA技术。通常,较为简单和实时性要求较高的 I / O I/O I/O操作可以使用 I / O I/O I/O处理器,而对于大规模数据传输和并发处理需求较高的情况,可以选择使用 D M A DMA DMA技术。

通道控制方式与 D M A DMA DMA控制方式的区别:

  1. D M A DMA DMA控制方式中需要 C P U CPU CPU来控制所传输数据块的大小、内存地址;而通道控制方式中这些消息都是由通道来控制的
  2. 一个 D M A DMA DMA控制器只能与一个外设建立连接传输数据;而一个通道可以控制多台设备与内存的数据交换
  3. 通道还可以执行内存中的一段程序, D M A DMA DMA不行。

通道可以分为字节多路通道、数组选择通道、数组多路通道。

  1. 字节多路通道有多个非分配型子通道,多个设备按照时间片轮转,每次和内存交换一个字节。
  2. 数组选择通道有一个分配型子通道,这个就是非抢占式的通道,一个设备占有后便一直使用。但是可以传送很多数据。
  3. 数组多路通道有多个非分配型子通道,这个是可抢占式的通道,多个设备都可以与内存交换大量数据。

I / O I/O I/O交换系统发展的四个阶段:程序中断查询 → \rightarrow D M A → DMA\rightarrow DMA I / O I/O I/O通道 → \rightarrow I / O I/O I/O处理器

参考文章:

  1. 通道控制方式与DMA控制方式的区别
  2. 关于设备控制器和 I/O 通道的理解
  3. 通道的几种类型
  4. 王道–DMA方式

你可能感兴趣的:(操作系统)