DSP

中断保存现场

2019-07-13 14:49发布

通常,中断响应时硬件已经保存了PC和PS的内容,但是还有一些状态环境信息需要保存起来。 如果不做保存处理,那麽即使以后能按断点地址返回到被中断程序,但由于环境被破坏,原程序也无法正确运行。 中断响应时硬件处理时间很短,所以保存现场工作可由软件来协助硬件完成,并且在进入中断处理程序时就立即去做。
对现场信息的保存方式是多样化的,常用方式有两种: 一种是集中式保存:在内存的系统区中设置一个中断现场保存栈,所有中断的现场信息都统一保存在这个栈中, 进栈和退栈操作由系统严格按照后进先出原则实施; 另一种是分散式保存:就是在每个进程的PCB中设置一个核心栈,一旦程序被中断,它的中断现场信息就保存在自己的核心栈中。