首页 / 资讯中心 / 文章详情

ISR 与 Task 到底是什么关系:中断发生以后 OS 做了什么

ISR 与 Task 到底是什么关系:中断发生以后 OS 做了什么 ★ FEATURED ARTICLE
前面已经把周期 Task 的链路串起来了:Hardware Timer ↓ OS Counter ↓ Alarm / Schedule Table ↓ ActivateTask ↓ Task但真实 ECU 里,并不是所有代码都靠周期调度运行。CAN 收到报文、ADC 转换完成、SPI 传输结束、定时器到期,这些事件首先进入的通常都不是 Task,而是:ISR Interrupt Service Routine 中断服务程序于是就有一个很重要的问题:中断来了以后,是 ISR 自己把事情全部做完,还是交给 Task?OS 在中间到底做了什么?先把最核心的关系记住:硬件事件 ↓ ISR ↓ 通知 / 激活 Task ↓ OS Scheduler ↓ Task获得CPU ↓ 完成后续处理ISR 负责“快速响应事件”,Task 负责“继续完成耗时的软件处理”。一、中断来了以后,CPU 为什么会突然停下当前 Task假设现在 ECU 正在执行:
阅读完成 · 觉得有帮助?
咨询建站