是否可以将Linux内核视为具有多个线程的单个进程?还有什么定义内核中的内存管理模块,调度程序,文件系统等之间的切换。
答案 0 :(得分:13)
Linux内核不能被视为一个流程,因为这是管理流程的责任之一。
您可以将内核视为一个重要的中断处理程序。在内核将处理器授予线程之后,获得控制权的唯一方法是中断(或系统调用,这也是中断)。当发生中断时,内核立即获得控制权,并适当地处理中断。此时可以调用内核的各个部分。
内核是多线程的,因为它可以同时处理不同处理器上的各种中断。另一方面,有内核线程,它们以与用户线程相同的方式进行管理(调度程序的内核和用户线程之间没有区别)。