我在笔记本电脑上安装了全新的 Manjaro Linux,它运行正常,但当我运行 htop 命令时,我发现 CPU 使用率很高。其中一个核心一直处于繁忙状态,接近 100%,第二个核心处于繁忙状态,约为 90%(我有 4 个核心,其余 2 个正常运行)。笔记本电脑可以使用,但我的电池消耗速度比以前更快。
我已经找到了解决方案并将其发布在这里,希望能帮助到像我一样的 Linux 初学者。
答案1
解决方案是创建一个 systemd 服务,禁用有问题的中断并在每次系统启动时自动执行。
首先,我需要通过运行以下命令来识别有问题的中断:
$ grep . -r /sys/firmware/acpi/interrupts/
我看见其中一个(/gpe11) 有这么大的数字,而其他的都是 0。
/sys/firmware/acpi/interrupts/gpe11: 7418350 STS disabled unmasked
然后我创建了一个服务文件:
$ cd /etc/systemd/system/
$ sudo touch disableInterrupts.service
$ sudo nano disableInterrupts.service
然后我在 disableInterrupts.service 里面写下了这个,并粘贴了我找到的中断的路径。
[Unit]
Description=Disables Interrupts
[Service]
ExecStart=/usr/bin/bash -c 'echo "disable" > /sys/firmware/acpi/interrupts/gpe11'
[Install]
WantedBy=multi-user.target
然后我启用该服务,以便它在系统启动时自动执行。
sudo systemctl enable disableInterrupts.service
重启电脑,然后再次运行 htop。CPU 使用率现在正常。