Skip to content

2020年 408 计算机组成原理 第 20 题

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

题目

下列事件中属于外部中断事件的是( )。

I、访存时缺页;

II、定时器到时;

III、网络数据包到达;

错因

A

把 Ⅰ(缺页)当成外部中断。但缺页是内部异常——CPU 在执行某条指令的地址转换时检测到的同步事件,与具体指令绑定。外部中断是异步事件、与指令无关。混淆了"中断"和"异常"。

B

同 A 的错(把缺页当外部中断),同时漏掉 Ⅱ(定时器)。定时器是 CPU 外的硬件计数器溢出后发中断信号给 CPU,明显是外部中断。

D

把三个全选——把缺页也当成外部中断(错)。三选一陷阱:看起来都是"系统层面的事件",但缺页是 CPU 内部的指令执行结果,不是外部硬件触发。

总解析

外部中断 vs 内部异常的核心区分

维度外部中断内部异常
触发源CPU 外部硬件 信号CPU 执行某指令时 内部检测到的事件
同步性异步(与当前指令无关)同步(与具体指令绑定)
是否可屏蔽部分可屏蔽(IF 标志位)不可屏蔽
例子时钟、键盘、网卡、DMA 完成缺页、除零、非法指令、自陷

逐项判断

事件触发源类型是外部中断?
访存时缺页CPU 内 MMU 检测到页表项无效内部异常
定时器到时外部硬件(系统定时器溢出)外部中断
网络数据包到达外部硬件(网卡接收到帧)外部中断

最终答案是 C(仅 Ⅱ、Ⅲ)

逐项详解

Ⅰ 缺页:CPU 在执行 LOAD/STORE 等访存指令时,MMU 查页表发现"虚地址对应页不在主存"。这是 CPU 内部的、由该具体指令直接触发的事件——属于内部异常(具体说是故障 Fault),不属于外部中断。

Ⅱ 定时器到时:硬件定时器(如系统时钟芯片)独立于 CPU 计时,到时后发中断信号给 CPU,CPU 在当前指令完成后响应。来源是 CPU 外部硬件 → 外部中断

Ⅲ 网络数据包到达:网卡硬件接收到一个数据包(Ethernet 帧)后,向 CPU 发中断信号通知它。来源是 CPU 外部硬件 → 外部中断

异常 vs 中断完整分类

异常事件
├── 中断(Interrupt) —— 异步、外部
│   ├── 可屏蔽中断(IRQ)—— 时钟、键盘、网卡、磁盘
│   └── 不可屏蔽中断(NMI)—— 严重硬件错误
└── 异常(Exception) —— 同步、内部
    ├── 故障(Fault)—— 缺页、保护违例(处理后重启原指令)
    ├── 自陷(Trap)—— 系统调用、断点(处理后下一条)
    └── 终止(Abort)—— 硬件级不可恢复错误(终止程序)

易错点速查

  1. 缺页 = 内部异常,不是外部中断
  2. 定时器 = 外部硬件(不是 CPU 内部的"时钟周期计数"),是外部中断
  3. 网络包到达 = 网卡硬件触发,是外部中断
  4. 判定方法:源头在 CPU 就是外部中断;在 CPU 就是内部异常

最后更新:

⚠️ 这道题暂未配可视化,欢迎在 CodeBrick 反馈区告诉我们你想看哪道题