![达到临界温度 - 不要关闭](https://linux22.com/image/67954/%E8%BE%BE%E5%88%B0%E4%B8%B4%E7%95%8C%E6%B8%A9%E5%BA%A6%20-%20%E4%B8%8D%E8%A6%81%E5%85%B3%E9%97%AD.png)
在我的系统日志中我有:
thermal thermal_zone0: critical temperature reached(102 C),shutting down
我因此丢失了数据。我更希望系统:
- 挂起至 RAM,或
- 降低时钟频率
我怎样才能做到这一点?
我想负责监控温度的进程正在调用关闭脚本。如果我可以更改它以运行挂起到 RAM,那么我和笔记本电脑都应该很高兴。所以问题部分在于:哪个进程负责执行此关闭操作?我该如何配置它?
uname -a
Linux aspire 3.16.0-31-lowlatency #43~14.04.1-Ubuntu SMP PREEMPT Tue Mar 10 20:41:36 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
答案1
从drivers/thermal/thermal_core.c
:
if (trip_type == THERMAL_TRIP_CRITICAL) {
dev_emerg(&tz->device,
"critical temperature reached(%d C),shutting down\n",
tz->temperature / 1000);
orderly_poweroff(true);
}
所以看来它没有调用脚本来处理这种情况。
答案2
这是一个非常严肃的信息。计算机仅在出现冷却问题时才会执行此操作。在任何情况下,温度都不应该达到这么高的值。这种立即关闭是由独立于操作系统运行的热传感器触发的操作。它可以防止处理器受到无法修复的损坏。最重要的是,您无法阻止这种保护措施,而且如果可能的话,您不应该这样做。现在你首先应该做的是检查冷却有什么问题并解决问题。几年前我就遇到过这个问题,结果是散热器和处理器之间的浆糊造成的。