0

为什么 ContextSwitch 必须是原子的以及如何在实践中实现这一点?

我认为它必须是原子的,因为如果它不完全保存先前进程的状态,它可能会导致未来的 contextSwitches.Inaccuracy 和错误数据的问题。

为了实现这一点,我们可以使用锁吗?

这是有道理的还是我过于简单化了。

4

1 回答 1

2

可能和你一样的任务。

由于保存操作需要几个步骤来保存 CPU 寄存器的值、进程状态、内存管理信息等。实际上需要使上下文切换原子化以确保一致性。

为此,可以使保存方法和可能的加载方法“同步”,以使它们各自的步骤在一个块中执行。

于 2013-09-22T21:58:55.383 回答