![我在 Linux 上的 htop 中看到了什么?](https://linux22.com/image/1562157/%E6%88%91%E5%9C%A8%20Linux%20%E4%B8%8A%E7%9A%84%20htop%20%E4%B8%AD%E7%9C%8B%E5%88%B0%E4%BA%86%E4%BB%80%E4%B9%88%EF%BC%9F.png)
答案1
我只有一个“实时事件管理器”进程正在运行,但我看到多个。
Linux 中,线程实现为LWP——轻量级进程这意味着线程 ID 和进程 ID 实际上是从同一个池中分配的。请参阅此答案以获取更多信息:PID 和 TID 之间的区别。
您可以按 切换嵌套/树视图F5。
Shift此外,您可以通过按+H或通过设置菜单来显示/隐藏用户空间线程-F2
启用“显示自定义线程名称“ 选项。
这些 ”进程“你看到的可能实际上”线程“ - 在树视图中会更清晰,或者使用“以不同颜色显示线程“选项已启用。
顶部的 CPU 利用率条。我经常看到它们飙升至 90-100%,但没有明显的减速
在 *nix 世界中,100% 意味着“100% 一个核心“...这并不意味着”100% 的可用处理时间“就像在 Windows 上一样。
此外, ”没有明显的减速“是一个非常有趣而主观的观点。
取决于内核的抢占,调度程序和优先级系统可以进行调整和优化:
- “即时的“ - 尝试“软实时“调度...(注意:Linux 不是实时内核)
- “交互的“- 将更容易抢占(中断)进程,使系统看起来更具响应性
- “批“——将推迟中断,以便更有效地完成一项大型工作,但代价是让用户等待。
如今,大多数面向用户的系统都针对交互式调度进行了优化,越来越多的服务器也是如此。
此外,我还观察到“大“ / ”更好的“处理器(例如:i7 / Xeon)在高负载下提供比”更好的响应能力更小“处理器(例如:Atom / i3)...我无法完全解释这一点,但这可能是由于线程数、缓存大小等......