Linux的idle进程占CPU,Linux kworker 占用CPU过高

先打开HTOP

htop

然后按H K(大写)

e222172179d0262fe38cc52016638d12.png

我们看到Kworker/0:0+events占用了大量CPU,下面参考下人家的回答

什么是kworker? kworker表示进行“工作”(处理系统调用)的Linux内核进程。在进程列表中可以有多个:kworker/0:1在第一个CPU内核上kworker/1:1是一个,在第二个CPU内核上是一个,依此类推。

为什么kworker占用您的CPU?要找出kworker浪费您CPU的原因,您可以创建CPU回溯:观察您的处理器负载(有top或没有),并在高负载kworker时执行,echo l > /proc/sysrq-trigger以创建回溯。(在Ubuntu上,这需要您使用登录sudo -s)。这样做几次,然后在dmesg输出结束时观察回溯。查看CPU回溯中经常发生的情况,希望它可以指出问题的根源。

安装perf

sudo dnf install perf.aarch64 #我用的华为云鲲鹏arm的,自行修改

记录所有CPU上10S回溯记录

sudo perf record -g -a sleep 10

然后会在当前目录下生成一个perf.data

用以下命令查看

sudo perf report

5aec23b175a4d4f8e0226d2ad4834685.png

我们看到arch_cpu_idle占用大量CPU。于是问了Fedora telegram群里的,翻了下arch/arm64/kernel/process.c

结论居然根本没有其他进程在使用CPU,Linux会自动保存CPU运作。(以后我会把博客转到自己的网站上zhyz.ru)

doesn't this mean that simply no other process is using the CPU? from what I see, this is like the "Idle task" in Windows

补充:不知道是不是BUG现在2个线程都满了。

参考:https://askubuntu.com/questions/33640/kworker-what-is-it-and-why-is-it-hogging-so-much-cpu

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "system idle process cpu过高" 的意思是系统空闲进程占用过高CPU资源。 这个问题通常是由于其他进程占用了过多的CPU资源,而系统空闲进程没有足够的资源可以占用。因此,在任务管理器中可以看到系统空闲进程CPU使用率很高。 要解决这个问题,可以尝试以下几个步骤: 1. 打开任务管理器,找到占用CPU资源较高的进程,尝试关闭或结束它们。如果这些进程是系统必需的进程,不要关闭它们。 2. 更新系统和驱动程序。有时候,过时的系统或驱动程序可能会导致CPU资源占用过高。 3. 运行杀毒软件进行系统扫描,以确保系统没有受到病毒或恶意软件的攻击。 4. 尝试优化系统设置。可以通过减少启动项、禁用无用的服务或清理系统垃圾文件等方式来提高系统性能。 如果以上步骤无法解决问题,建议联系专业技术人员进行诊断和修复。 ### 回答2: system idle process(系统空闲进程)的CPU占用率高并不是一个问题,相反,这是一种正常的现象。系统空闲进程实际上是计算机系统在自由时间内使用的一种进程。当运行所有其他进程的程序时,系统空闲进程会自动运行,使CPU处于空闲状态。 如果一个用户在查看任务管理器时发现,系统空闲进程CPU占用率较高,则说明该计算机的CPU处于空闲状态。这是一个正常的现象,因为计算机操作系统总会尝试将CPU以最大的速度运行,使其处于空闲状态以进行电源管理。 如果用户在运行其他程序时发现,系统空闲进程CPU占用过高并随之导致其他进程CPU占用率过低,则可能是因为计算机系统存在硬件故障或恶意软件。 解决CPU空闲情况下的系统空闲进程CPU占用过高问题可以尝试以下几种方法: 1. 删除恶意软件:使用杀毒软件或恶意软件删除工具,扫描计算机系统是否感染了病毒或恶意软件,并将其删除。 2. 降低程序开机时启动:调整启动时项,禁用或删除不必要的程序,排除因程序启动造成的CPU占用过高的情况。 3. 更新驱动程序:升级所有硬件设备的驱动程序,确保计算机系统能够正常运行。 4. 修复注册表问题:使用注册表清理软件清理注册表,修复任何错误,以确保计算机系统能够正常运行。 5. 优化系统性能:优化计算机性能,如清理内存,缓存和浏览器历史记录等,从而减少系统需要处理的数据量。 总的来说,如果出现系统空闲进程CPU占用过高情况,应该及时检查计算机系统,以消除潜在问题。在检查过后,如果该问题还是存在,则应该考虑升级硬件设备或重装操作系统,以保证计算机系统的正常运行。 ### 回答3: 在使用电脑时,您可能会发现电脑的性能变得非常缓慢,电脑管理器中的“进程”选项占用了很高的CPU资源,其中就包括了“系统空闲进程”,这是在您的CPU处于空闲状态时发生的。 系统空闲进程 “系统空闲进程”不是一个真正的耗时进程,它只是表示在运行非常低的负载计算机上,CPU正在等待新任务,所以它在等待期间会显示一个空闲进程。这就是为什么系统空闲进程占用您的CPU资源,而不是真正的工作负载进程。 解决方法 1. 更新系统 您可能需要更新您的系统,包括 Microsoft 的Windows更新、安全补丁等。因为系统更新通常会使系统更稳定、更快速、有效地使用资源。 2. 升级系统硬件 如果您的计算机CPU的型号太旧或是用了很长时间,它有可能会卡顿,可以降低CPU负载。 3. 检查计算机病毒 如果您的计算机感染了病毒或是被恶意软件感染,也可能会导致系统空闲进程占用大量CPU资源。可以针对计算机进行病毒扫描和更新防病毒软件。 4. 清理注册表 Windows的注册表存储着计算机安装和运行的所有软件和硬件信息。如果注册表被破坏或充满错误信息,这也可能会导致系统出现问题。可以使用 Ccleaner 清理。 5. 关闭不必要的程序 关闭一些占用大量计算机资源的程序,例如游戏程序或者是下载等大量CPU消耗的程序,可以让CPU空闲时间变少。打开任务管理器检查并关闭CPU占用率高的程序。 综上,系统空闲进程占用大量CPU资源的情况不是真正意义上的故障现象,这与您的电脑本身或者其中使用和管理问题有关。通过优化您的系统和硬件,检查计算机病毒,清理注册表,关闭不必要的程序,您可以减少CPU负荷并提高系统性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值