admin管理员组文章数量:1531663
2024年4月2日发(作者:)
linuxCPU占用率过高怎么办
你们在用Linux系统的时候会不会遇到cpu过高的情况呢?下面由学下啦小编教你怎
么在linux系统中限制CPU占用率
linux系统中限制CPU占用率的方法
Linux内核是一名了不起的马戏表演者,它在进程和系统资源间小心地玩着杂耍,并
保持系统的正常运转。 同时,内核也很公正:它将资源公平地分配给各个进程。
但是,如果你需要给一个重要进程提高优先级时,该怎么做呢? 或者是,如何降低一
个进程的优先级? 又或者,如何限制一组进程所使用的资源呢?
答案是需要由用户来为内核指定进程的优先级
大部分进程启动时的优先级是相同的,因此Linux内核会公平地进行调度。 如果想让
一个CPU密集型的进程运行在较低优先级,那么你就得事先配置好调度器。
下面介绍3种控制进程运行时间的方法:
使用 nice 命令手动降低任务的优先级。
使用 cpulimit 命令不断的暂停进程,以控制进程所占用处理能力不超过特定限制。
使用linux内建的control groups(控制组)功能,它提供了限制进程资源消耗的机制。
我们来看一下这3个工具的工作原理和各自的优缺点。
模拟高cpu占用率
在分析这3种技术前,我们要先安装一个工具来模拟高CPU占用率的场景。我们会
用到CentOS作为测试系统,并使用Mathomatic toolkit中的质数生成器来模拟CPU负
载。
很不幸,在CentOS上这个工具没有预编译好的版本,所以必须要从源码进行安装。
先从 /2 这个链接下载源码包
并解压。然后进入 mathomatic-16.0.5/primes 文件夹,运行 make 和 sudo make
install 进行编译和安装。这样,就把 matho-primes 程序安装到了 /usr/local/bin 目录
中。
接下来,通过命令行运行:
代码如下:
/usr/local/bin/matho-primes 0 9999999999 > /dev/null &
程序运行后,将输出从0到9999999999之间的质数。因为我们并不需要这些输出
结果,直接将输出重定向到/dev/null就好。
现在,使用top命令就可以看到matho-primes进程榨干了你所有的cpu资源。
好了,接下来(按q键)退出 top 并杀掉 matho-primes 进程(使用 fg 命令将进程切换
版权声明:本文标题:linuxCPU占用率过高怎么办 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1712069836a341600.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论