CPU节能模式导致linux操作系统宕机的解决办法

有台HP DL380 G6服务器,安装有redhat linux as5.6 64位操作系统,安装好操作系统后,服务器有时出现宕机现象,每次重启后都恢复正常,经查看日志发现有CPU frequency相关的信息,根据该信息可以看出CPU不支持频率调整,需要设置“CPUFREQ_ENABLED=no”和“SUSPEND2RAM_FORCE=yes”的参数。

经过分析可以看出宕机现象是由服务器上CPU的节能模式引起,解决的办法就是在BIOS中关闭CPU的节能模式,或者修改cpufreq的配置参数:
#vi /etc/powersave/cpufreq
CPUFREQ_ENABLED=”no”
重启/etc/init.d/powersave即可。

cpufreq技术:

在cpufreq中内置了5种策略:performance、powersave、userspace、ondemand、conservation。默认采用ondemand策略,在该策略里每80个毫秒就采集一次cpu的使用率,同时假设前后两次cpu使用率是相同的。通过前一次的cpu使用率推出后一个cpu使用率,完了进行频率设置。所以就总的思想来说还不是很难理解。

变频技术是指CPU硬件本身支持在不同的频率下运行,系统在运行过程中可以根据随时可能发生变化的系统负载情况动态在这些不同的运行频率之间进行切换,从而达到对性能和功耗做到二者兼顾的目的。

虽然多个处理器生产厂家都提供了对变频技术的支持,但是其硬件实现和使用方法必然存在着细微甚至巨大的差别。这就使得每个处理器生产厂家都需要按照其特殊的硬件实现和使用方法向内核中添加代码,从而让自己产品中的变频技术在 Linux 中得到支持和使用。然而,这种内核开发模式所导致的后果是各个厂家的实现代码散落在 Linux 内核代码树的各个角落里,各种不同的实现之间没有任何代码是共享的,这给内核的维护以及将来添加对新的产品的支持都带来了巨大的开销,并直接导致了cpufreq 内核子系统的诞生。

管理策略:

Linux内部共有五种对频率的管理策略userspace,conservative,ondemand,powersave和 performance

1.performance :CPU会固定工作在其支持的最高运行频率上;

2.powersave :CPU会固定工作在其支持的最低运行频率上。因此这两种governors 都属于静态 governor ,即在使用它们时 CPU 的运行频率不会根据系统运行时负载的变化动态作出调整。这两种 governors 对应的是两种极端的应用场景,使用performance governor 体现的是对系统高性能的最大追求,而使用 powersave governor则是对系统低功耗的最大追求。

3.Userspace:最早的 cpufreq 子系统通过 userspace governor 为用户提供了这种灵活性。系统将变频策略的决策权交给了用户态应用程序,并提供了相应的接口供用户态应用程序调节 CPU 运行频率使用。 (可以使用Dominik 等人开发了 cpufrequtils工具包 )

4.ondemand :userspace是内核态的检测,效率低。而ondemand正是人们长期以来希望看到的一个完全在内核态下工作并且能够以更加细粒度的时间间隔对系统负载情况进行采样分析的 governor。当CPU有负载的时候选用最大的主频,当CPU空闲的时候一步步降低.

5.conservative : ondemand governor 的最初实现是在可选的频率范围内调低至下一个可用频率。即根据CPU使用情况进行升或降频,这种降频策略的主导思想是尽量减小对系统性能的负面影响,从而不会使得系统性能在短时间内迅速降低以影响用户体验。

但是在 ondemand governor 的这种最初实现版本在社区发布后,大量用户的使用结果表明这种担心实际上是多余的, ondemand governor 在降频时对于目标频率的选择完全可以更加激进。因此最新的 ondemand governor 在降频时会在所有可选频率中一次性选择出可以保证 CPU 工作在 80% 以上负荷的频率,当然如果没有任何一个可选频率满足要求的话则会选择 CPU 支持的最低运行频率。大量用户的测试结果表明这种新的算法可以在不影响系统性能的前提下做到更高效的节能。在算法改进后, ondemand governor 的名字并没有改变,而 ondemand governor 最初的实现也保存了下来,并且由于其算法的保守性而得名 conservative 。

Ondemand降频更加激进,conservative降频比较缓慢保守,事实使用ondemand的效果也是比较好的。和ondemand管理器不同的是,在CPU负载高的时候conservative 并不直接跳上最高的主频,而是采用步进的方式来升高主频。

出处:http://www.eumz.com/2015-10/1241.html

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Linux系统宕机原因可能有多种,常见的可能有以下几种: 1. 内存泄漏:程序无法正确释放内存,导致内存不足,最终导致系统宕机。 2. 资源竞争:多个进程或线程争夺同一资源(如共享内存),导致系统无法正常工作。 3. 硬件故障:如CPU、内存、硬盘等硬件出现故障,导致系统无法正常工作。 4. 驱动程序错误:驱动程序可能存在bug,或者与某些硬件不兼容,导致系统无法正常工作。 5. 病毒攻击:恶意软件的攻击可能导致系统崩溃。 6. 软件缺陷:某些程序可能存在bug,或者与其他程序不兼容,导致系统无法正常工作。 对于Linux系统的宕机,应该首先考虑是否存在硬件故障,并检查系统日志、内核日志等信息,排查问题。同时,定期更新系统和软件,加强系统的安全性,减少软件缺陷和病毒攻击的风险。在使用第三方软件和驱动程序时,应谨慎选择,避免不必要的风险。 ### 回答2: 在Linux系统中,宕机是指系统突然停止工作的现象,这种情况可能导致数据丢失和其他损失。系统宕机是由多种原因导致的,可能是硬件故障、软件错误或其他问题。 硬件故障是导致Linux系统宕机的最常见原因之一。硬件故障包括:内存问题,磁盘问题和处理器故障。当硬件发生故障时,内核可能无法访问到数据,从而导致系统宕机。 软件错误也是导致Linux系统宕机的常见原因。当软件发生错误时,它可能会导致系统无法响应,从而导致系统停机。例如,如果一个进程死锁,它可能会导致其他进程无法继续运行,从而导致系统宕机。 其他可能导致Linux系统宕机的原因包括:系统配置错误、网络问题、过热等。 面对Linux系统宕机,我们可以采取以下措施来进行修复: 1.检查硬件是否正常。可以使用内存检测工具、磁盘检测工具、处理器诊断工具等进行检查。 2.检查系统配置是否正确。可能是配置文件被更改或删除,导致系统出现问题。 3.升级或回退软件版本,以便解决已知的软件问题。 4.监控系统运行状态,及时发现问题并进行修复。 5.保持系统安全,及时更新补丁,以减少安全漏洞的发生。 总之,Linux系统宕机是一个很严重的问题,我们应该认真分析原因并及时采取措施来解决问题。在使用Linux系统时,需要具备相应的技能和知识,以便快速准确地诊断和解决问题。 ### 回答3: 作为一种稳定而高效的操作系统Linux常常被用于企业级应用和科学研究中。但是,即使Linux系统出现宕机的情况,也要对其进行深入分析,以便找到并解决问题,提升系统的稳定性和可靠性。 Linux系统出现宕机的原因有多种,以下是其中的几种。 1.硬件问题: 硬件故障是各种操作系统宕机最常见的原因,Linux系统也不例外。硬件故障包括CPU故障,硬盘故障,内存故障等等。这些故障会导致Linux系统崩溃或重启,无法正常工作。 2.操作系统问题: 操作系统问题可能是由于内核或操作系统软件的缺陷和错误引起的。例如,内核代码缺陷、系统文件损坏、软件安装错误等都可能导致Linux系统宕机。 3.软件问题: Linux系统上运行的软件也存在故障的风险。本身存在的缺陷或其他不兼容问题都可能导致系统宕机。例如,一个开发过程中可能遇到的指针错误可能会导致程序崩溃,并在此之后导致系统崩溃。 4.网络故障: 使用网络连接的设备或其他主机,也可能造成Linux系统的宕机。例如,一个突然出现的全局网络故障可能会导致系统无法正常运行。 针对这些原因,解决方法各不相同。如果是硬件问题,需要及时更换或修复,而如果是软件问题,则需要升级或重新安装软件。如果是网络问题,我们需要检查网络设备或更改网络连接等方式解决。 总之,Linux系统的宕机虽然会对运作产生影响,但也不是大问题。针对不同的问题我们可以采用对应的办法解决,以确保系统的稳定性和高效性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值