调用函数是否被视为上下文切换?

Amr*_*rek 4 c c++ function context-switch

当我调用如下函数时

void main(void){
    Function();
}
Run Code Online (Sandbox Code Playgroud)

它是否被视为上下文切换,因为我在转到函数之前保存了寄存器?

nir*_*har 6

不,当内核交换进程时会发生上下文切换。调用用户空间函数将使您处于同一进程中,因此不会进行上下文切换。然而,调用内核函数需要来自内核的操作,因此它是到内核的上下文切换。