Linux 包括一些称为内核线程的特权进程。是否有任何运行/暂停它们的调度程序?如果是,这个调度程序是否与系统调度程序相同(我的意思是调度整个系统进程的调度程序)?
最佳答案
Linux调度器正在调度任务。这些可以是
- 内核线程(例如
kswapd
),或 - 单线程进程(例如
bash
),或 - 多线程进程的单个线程(例如某些浏览器或服务器)
多线程进程的许多线程是共享公共(public)地址空间(以及其他东西,例如文件描述符)的任务。
据我所知,调度程序不会将内核线程与其他任务分开。但是调度程序确实考虑了调度策略(sched_setscheduler(2))和优先级(setpriority(2))(对于大多数内核线程,优先级通常非常高)。参见 sched(7)
关于linux - Linux 内核线程的调度程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26537024/