某磁盘控制器需要把一大块数据传送到主存。如果每传送一个字节都由 CPU 反复执行输入输出指令,CPU 开销很大。系统希望外设控制器在获得总线控制权后,能直接在外设和主存之间传送数据,CPU 只在开始和结束时参与较少控制。该方式通常称为()。
DMA 是 Direct Memory Access,直接存储器访问。它允许外设控制器在获得总线控制权后,直接与主存进行数据块传送,减少 CPU 对每个数据单元的逐个搬运。CPU 通常负责设置传送起始地址、长度、方向等参数,传送完成后由中断等方式通知 CPU。
选项分析
正确。DMA 用于外设和主存之间的数据块传送,能减少 CPU 干预。
错误。绘制图标属于图形制作,不是硬件 I/O 控制方式。
错误。电子邮件抄送与数据总线和主存传送无关。
错误。第三范式是数据库设计概念。
本题为什么容易错
这题容易把 DMA 和中断混淆。中断强调事件通知 CPU 来处理;DMA 强调数据传送过程中不需要 CPU 逐字节搬运。实际系统中二者常配合:DMA 负责搬数据,搬完后用中断通知 CPU。
简短答案
DMA 为什么适合高速外设和内存之间传送大量数据,正确答案是 A(DMA 直接存储器访问)。DMA 是 Direct Memory Access,直接存储器访问。它允许外设控制器在获得总线控制权后,直接与主存进行数据块传送,减少 CPU 对每个数据单元的逐个搬运。CPU 通常负责设置传送起始地址、长度、方向等参数,传送完成后由中断等方式通知 CPU。
易混淆概念对比表
| 概念 | 本题判断 | 区别要点 | 记忆提示 |
|---|---|---|---|
| DMA 直接存储器访问 | 本题正确答案 | 正确。DMA 用于外设和主存之间的数据块传送,能减少 CPU 干预。 | 看到题干核心场景时优先联想到它 |
| 手工重新绘制网页图标 | 本题干扰项 | 错误。绘制图标属于图形制作,不是硬件 I/O 控制方式。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
| 电子邮件抄送 | 本题干扰项 | 错误。电子邮件抄送与数据总线和主存传送无关。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
| 数据库第三范式分解 | 本题干扰项 | 错误。第三范式是数据库设计概念。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
本题易混淆选项怎么区分
- 手工重新绘制网页图标:错误。绘制图标属于图形制作,不是硬件 I/O 控制方式。
- 电子邮件抄送:错误。电子邮件抄送与数据总线和主存传送无关。
- 数据库第三范式分解:错误。第三范式是数据库设计概念。
知识点详解
DMA 的典型过程是:CPU 初始化 DMA 控制器,设置主存地址、传送长度、方向和设备信息;DMA 控制器申请并获得总线控制权;控制器在外设和主存之间传送数据;传送完成后通知 CPU。它的优势是提高大块数据传输效率,释放 CPU 去执行其他任务。需要注意,DMA 访问主存也要占用总线,所以有时会影响 CPU 对主存的访问,这也是计算机组成原理里常说的“周期窃取”等概念背景。软考题一般重点不在时序细节,而在识别场景:大量数据、外设到内存、减少 CPU 干预,就是 DMA 的典型信号。
备考速记
速记:DMA 是让外设控制器直接搬大块数据,CPU 少当搬运工。
DMA 在主存场景中的作用
DMA在本题中的核心价值,是解决“某磁盘控制器需要把一大块数据传送到主存。如果每传送一个字节都由 CPU 反复执行输入输出指令,CPU 开销很大。系统希望外设控制器在获得总线控制权后,能直接在外设和主存之间传送数据,CPU 只在开始和结束时参与较少控制。该方式通常称为()”这个场景问题。复习时不要只背选项名称,还要理解它为什么适用于该场景,以及它能解决哪类安全、流程或管理问题。
同类题怎么考
- 给出主存场景,判断应该选择哪个概念、工具、协议或管理过程。
- 考查DMA的作用,要求从四个相近选项中找出最符合题干目标的一项。
- 把DMA和手工重新绘制网页图标、电子邮件抄送、数据库第三范式分解放在一起考,重点看适用场景是否一致。
- 题干通常会出现一个关键动作或目标,先定位关键词,再回到选项逐一排除。
DMA 在计算机硬件工程师软考中的考法
软考选择题通常不会只考概念定义,还会把DMA放到主存场景中,要求判断它的作用、适用范围或与相近概念的区别。遇到这类题时,先抓住题干中的业务场景,再看哪个选项最能解决该场景下的核心问题。
解题思路
这题先看数据量和 CPU 参与程度。少量状态查询可以用程序控制方式,事件到来可以用中断方式;但磁盘、网卡这类大块数据传输,如果让 CPU 一个字节一个字节搬,会很浪费。DMA 的思路是让控制器自己搬一段,CPU 去做更有价值的事。
考点定位
DMA 题的关键词是大量数据、外设和主存直接传送、减少 CPU 干预、传送完成后通知 CPU。
易错提醒
- 把 DMA 理解成 CPU 更快地执行搬运指令。
- 忘记 DMA 控制器需要总线控制权,可能与 CPU 访问主存产生竞争。
- 把中断方式和 DMA 方式看成互斥,忽略 DMA 完成后常用中断通知。
备考提示
- 复习 I/O 控制方式时,把程序查询、中断、DMA、通道按 CPU 参与程度比较。
- 看到磁盘、网卡、大块数据、主存直接传送,优先想到 DMA。
- DMA 不是不要 CPU,而是减少 CPU 在数据搬运过程中的逐项参与。
你可能还想了解
- DMA 为什么适合高速外设和内存之间传送大量数据?
- DMA是什么?
- DMA在计算机硬件工程师考试中怎么考?
- 计算机硬件工程师DMA题怎么理解?
- DMA直接存储器访问作用怎么考?
- DMA和中断区别怎么考?
本文小结
本题核心考点是DMA在主存场景中的判断和应用。遇到类似题目时,先看题干描述的目标,再判断哪个选项最符合场景;本题应选择 A(DMA 直接存储器访问)。