11

Linux Kernel 是否可以被视为具有多个线程的单个进程?还有什么定义了内核中内存管理模块、调度程序、文件系统等之间的切换。

4

1 回答 1

15

Linux内核不能被视为一个进程,因为这是它管理进程的职责之一。

您可以将内核视为一个大的中断处理程序。在内核将处理器授予线程后,获得控制权的唯一方法是中断(或系统调用,它们也是中断)。当中断发生时,内核立即获得控制权,并适当地处理中断。此时可以调用内核的各个部分。

内核是多线程的,因为它可以同时处理不同处理器上的各种中断。另一方面,有内核线程,它们的管理方式与用户线程相同(调度程序的内核线程和用户线程之间没有区别)。

于 2013-07-17T17:46:19.163 回答