【发布时间】:2013-07-19 09:44:42
【问题描述】:
我读到here 说 ISR 和 DPC 会弄脏处理器缓存。谁能解释一下?
【问题讨论】:
标签: caching cpu interrupt computer-architecture microprocessors
我读到here 说 ISR 和 DPC 会弄脏处理器缓存。谁能解释一下?
【问题讨论】:
标签: caching cpu interrupt computer-architecture microprocessors
ISR 和 DPC 可以抢占当前正在运行的代码,因为它们的执行级别具有更高的优先级。抢占完成后,ISR/DPC 代码开始执行。内存寻址是一个非常基本的操作,几乎肯定会需要它。一旦请求内存访问,缓存行可能会被替换。
总结以上内容 - ISR 和 DPC 会破坏稳定状态并执行乱序操作,因为它们具有更高的优先级。通常,执行需要的内存与当前缓存的内存不同(因为它不是抢占前正在执行的逻辑的一部分),从而导致中断前正在执行的代码受到污染。
【讨论】: