处理器管道读取内存后中断是否会导致中断返回时重新读取内存?

问题描述 投票:0回答:1

我在读取时清除寄存器(映射到内存,而不是CPU的一部分)的代码读取中,可能会被中断,但中断将始终返回到相同的上下文。

我在想,如果CPU管道读取读时清除寄存器,但在执行指令之前CPU将被中断,当它返回时,它将重新读取现在已清除的读时清除寄存器到上一个被中断的阅读。

这个场景有效吗?如果是,应该如何处理?

c embedded interrupt
1个回答
0
投票

我在想如果CPU管道读取读时清除寄存器,但在执行指令之前CPU会被中断

指令永远不会在中间中断(至少不会以可观察到的方式)。你所描述的情况是不可能的。如果可能的话,就不可能编写处理“读取时清除”内存的代码。

参见维基百科“指令流水线”

无论是谁写的,都感到困惑,或者至少非常不清楚他们到底是什么意思。

© www.soinside.com 2019 - 2024. All rights reserved.