Skip to content

2025年 408 计算机组成原理 第 21 题

计算机组成原理2025年选择题2分

题目

下列设备中,适合采用 DMA 输入输出的设备是( )。

Ⅰ. 键盘 Ⅱ. 网卡 Ⅲ. 固态硬盘 Ⅳ. 针式打印机

错因

A

错把键盘判成"适合 DMA"。键盘的特点是事件驱动 + 单字节传输——按一次产生 1 字节扫描码,一秒最多十几次。这种"低速、零散、不可预测时机"的设备建立 DMA 通道反而会浪费大量初始化开销,标准做法是中断驱动(按键时发中断、CPU 读 1 字节进缓冲区即可)。键盘在所有 408 真题里都是中断方式的代表设备,不是 DMA 候选。

C

针式打印机被错判成"适合 DMA"。针式打印机走机械击打,速度极慢(每秒几十~几百字符),数据流是字节级别。即便要打印长文档,也是 CPU 用中断/查询方式按字节往缓冲区送即可。给如此慢的设备配 DMA 控制器是大材小用——CPU 本身的字节级控制完全跟得上,DMA 的"成块快传"优势在这里发挥不出来。

D

D 把固态硬盘判对了(适合 DMA),但坚持把针式打印机也算进来——同 C 的问题。漏掉网卡这个明确的高速 DMA 候选。

总解析

思路:判断一个设备是否适合 DMA,看两个核心指标:

  1. 传输速率高 vs 低:DMA 的优势是 CPU 不参与数据搬运,把高速 I/O 与 CPU 解耦;如果设备本身慢,CPU 反正也闲,没必要 DMA
  2. 数据是否成块:DMA 一次启动传输一个数据块(连续若干字节/扇区);如果数据是单字节级的零散输入(按键、字符回显),用中断更合算

逐项分析

设备速率数据形态适合的 I/O 方式
Ⅰ. 键盘极低(事件级)单字节中断(适合);DMA(不适合)
Ⅱ. 网卡高(百兆/千兆位级)成包成块DMA(适合)
Ⅲ. 固态硬盘高(GB/s 级,PCIe NVMe)块(扇区/页)DMA(适合)
Ⅳ. 针式打印机极低(机械)单字节中断 / 查询(适合);DMA(不适合)

只有 Ⅱ 网卡和 Ⅲ 固态硬盘满足"高速 + 块传输"两条件——这正是 DMA 设计的本意:把大块数据搬运的工作交给专用 DMA 控制器,让 CPU 在传输期间能去执行别的指令。

最终答案是 B(Ⅱ、Ⅲ)

三种 I/O 方式对照表

方式CPU 介入适合设备典型例子
程序查询全程轮询,CPU 完全占用极少数严格实时、独占 CPU 的小型场景旧式串口
中断驱动设备就绪发中断,CPU 处理一次低速、零散输入的设备键盘、鼠标、慢速串口、针式打印机
DMACPU 启动后撒手,由 DMA 控制器搬数据高速、成块传输的设备磁盘、固态硬盘、网卡、显卡

判定速记

键盘 / 鼠标 / 慢速字符设备 → 中断 磁盘 / 网卡 / 大容量批量数据 → DMA 极简单/独占的小系统 → 查询

记住"高速且成块"两个关键词,DMA 题基本一眼出答案。

最后更新:

🎬 可视化演示
加载中...

提示:可在可视化区直接操作播放、步进、修改参数