linux中oom_adj
时间: 2024-05-16 22:10:41 浏览: 24
oom_adj是Linux内核中的一个参数,用于控制进程被OOM(Out Of Memory)杀死的优先级。当系统内存不足时,内核会尝试杀死一些进程以释放内存。oom_adj值越低,进程被杀死的概率就越大,反之亦然。
oom_adj的取值范围是[-16,15],默认值为0。当进程的oom_adj值为-17时,表示该进程永远不会被OOM杀死。
通过修改/proc/[pid]/oom_adj文件,可以调整进程的oom_adj值。例如,以下命令将PID为123的进程的oom_adj值设置为5:
echo 5 > /proc/123/oom_adj
注意,oom_adj只是一个控制进程被杀死优先级的参数,并不能解决内存泄漏等问题。因此,在使用oom_adj调整进程优先级时,需要慎重考虑,并结合其他监控和优化手段来确保系统稳定性。
相关问题
Android的oom_adj, oom_score, oom_score_adj有什么区别
在Android系统中,oom_adj、oom_score和oom_score_adj是用来管理进程内存的参数。
oom_adj:是一个整数值,表示了进程在内存不足时的优先级。数值越小,表示进程被oom-killer杀死的概率越小。
oom_score:也是一个整数值,表示了进程所占用的内存大小和oom_adj的综合评分。数值越大,表示进程被oom-killer杀死的概率越大。
oom_score_adj:也是一个整数值,表示了进程在内存不足时的优先级。与oom_adj不同的是,oom_score_adj的取值范围为[-1000, 1000],而oom_adj的取值范围为[-17, 15]。oom_score_adj的计算公式是:oom_score_adj = oom_adj - oom_score。
因此,oom_score_adj的取值不仅与进程的oom_adj值有关,还与进程的oom_score值有关。如果进程的oom_score_adj值为负数,表示进程的优先级较高,oom-killer将会优先杀掉oom_score_adj值较大的进程。反之,如果进程的oom_score_adj值为正数,表示进程的优先级较低,oom-killer将会优先杀掉oom_score_adj值较小的进程。
RenderThread] RenderThread invoked oom-killer: gfp_mask=0x100dc2(GFP_HIGHUSER|__GFP_ZERO), order=0, oom_score_adj=101
这是 Android 应用程序的一个 Out Of Memory (OOM) 错误。这个错误常常发生在应用程序尝试分配太多内存时,系统无法再为其分配更多内存时发生。这个错误日志中的 gfp_mask=0x100dc2(GFP_HIGHUSER|__GFP_ZERO) 意味着系统在尝试为应用程序分配内存时使用了 GFP_HIGHUSER 标志,这个标志表示要分配的内存是用户空间的高端内存。order=0 表示请求的内存大小为 2^0=1 页,oom_score_adj=101 表示这个应用程序的 OOM_SCORE_ADJ 值为 101,表示应用程序在系统内存不足时优先级较高,可能会更容易被杀死以释放内存。这个错误的解决方法包括优化应用程序内存使用、减少内存泄漏等。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)