内核可以通过多线程同时处理两个系统调用吗?

Can kernel handle two syscalls at the same time by doing multithreading?

当用户应用程序进行系统调用时,程序进入内核模式并OS处理用户请求。如果两个进程同时进行系统调用,OS 可以进行多线程吗?例如,内核可以有两层,第二层将通过多线程处理用户请求,而第一层将控制第二层。这不可能吗?还是只是不擅长实用?

谢谢。

这是例行公事。当一个进程(一个进程的线程)陷入内核时,内核"borrows"用户线程到运行内核代码。很长一段时间(几十年?)以来我们仍然有一个 "unique kernel lock" 强制在内核中顺序执行线程。除了内核本身之外,通常 运行 为它自己的工作(分页、回写......)设置多个线程。