中断和恢复代码

时间:2017-04-06 12:45:29

标签: c++ assembly operating-system

我有对象队列,按顺序执行。没有操作系统,我只是使用硬件和我的代码:

while(true) {
    if( next = queue.next() ) {
        next->do_stuff()
    }
}

现在我想暂停基于某些硬件中断在next->do_stuff()执行的代码(没有关于硬件中断的更多细节)。此挂起应保存状态(当前指令)并将next排入队列,以便在挂起之前,最后一条指令的do_stuff的下一个next开始。我知道,如何保护国家,但我不知道如何从do_stuff返回。我认为,这应该通过组装来完成。

一些流行语要搜索什么,会非常好。谢谢:))

0 个答案:

没有答案