以下偶尔会出现在/var/log/syslog:
rtkit-daemon[1145]: The canary thread is apparently starving. Taking action.
rtkit-daemon[1145]: Demoting known real-time threads.
rtkit-daemon[1145]: Successfully demoted thread 1431 of process 1368 (n/a).
rtkit-daemon[1145]: Successfully demoted thread 1430 of process 1368 (n/a).
rtkit-daemon[1145]: Successfully demoted thread 1368 of process 1368 (n/a).
rtkit-daemon[1145]: Demoted 3 threads.
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?
Jan*_*anC 25
这里使用的术语“金丝雀”最初来自煤矿开采。煤矿工人使用金丝雀检测危险气体(如果他们随身携带的金丝雀死了,他们知道他们必须尽快离开矿井/矿井)。因此,术语“金丝雀”现在通常用于任何您用来获得有关危险情况的(早期)警告的东西。
在这种情况下,“rtkit”似乎启动了一个“正常”线程来测试获得“实时”优先级的线程是否“饿死”了其他线程(和进程),其中“饿死”意味着它们获得的处理器时间太少. 这是一种安全措施,可确保有权访问实时优先级的进程/线程不会占用太多 CPU 时间,以至于其他任务不再获得任何 CPU 时间。
很明显,一些从 rtkit 获得实时优先级的线程行为不端,并试图独占 CPU,rtkit 用它的“金丝雀线程”检测到这一点,因此 rtkit 带走了实时优先级。
| 归档时间: |
|
| 查看次数: |
17200 次 |
| 最近记录: |