cpu进入中断,某些寄存器置位。
如果手工修改了执行标志位。
不执行iret,cpu也认为不在中断状态
其实这个世界根本没有在中断状态和不在中断状态。
其实在cpu启动的时候,往堆栈中塞入特定的数据,然后执行iret,也是可以跳转到一个函数入口的。(这就是那个os中任务的装入,模拟被中断过)
世上本无中断,有的只是中断状态,现在执行的代码的中断级别(阻止或者放入某些级别的代码插入运行的允许可能)
如果修改了现在的代码运行级别,那么忘记中断吧!
世上根本没有中断。只有代码的运行级别。
(这个好像是arm 的思想) |