在什么情况下内核线程在Linux中运行?

use*_*369 16 linux kernel linux-kernel

我是Linux Kernel的新手.
我知道有两个上下文
1.进程上下文,在用户空间或内核空间中运行(例如:作为系统调用的一部分)
2.中断上下文

在什么情况下,内核线程(与任何用户线程无关,例如:flush任务)运行?

除了Linux内核中的进程和中断上下文之外还有其他任何上下文吗?

Pav*_*ath 17

内核线程在内核空间的进程上下文中运行.虽然有一些内核线程也可以处理中断.它们被称为线程中断处理程序.但他们仍然在流程环境中运行!

以下是对两种情境之间重要区别的精彩解释!

这是一个可以帮助你获得更多理解的东西!

调度程序代码在什么上下文中运行?

据我所知,进程和中断是唯一的2个上下文.

  • 本质上,内核线程的*点*是允许内核在进程上下文中执行代码,但不是直接代表特定的用户空间进程. (7认同)