系统调用使用软件中断(中断向量 128)实现。在 roberts 的情书“Linux Kernel Development”中写道,中断句柄发生在中断上下文中。它还写到系统调用在进程上下文中运行,但系统调用句柄实际上是一个“中断句柄”,那么为什么它在不同的上下文中呢?
最佳答案
您将平台的实现与 Linux 内核的设计混合在一起。
当您谈论 Linux 内核时,中断上下文是代码“自行”运行且不附加任何进程的地方 - 通常用于处理来自设备的中断。进程上下文是来自用户进程的系统调用的结果,其中运行的代码“附加”到进程。
当您谈论平台实现时,中断上下文可能只是意味着处理器处于某种类型的中断处理程序模式。我对您的平台了解不够,无法提供任何具体信息。
关于linux-kernel - 系统调用与中断上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18364473/