索尼的工程師 Peter Enderborg 向 Linux 內核 LKML 提交了一份郵件,郵件中提出了一種新的看門狗(Watchdog)軟件,可優化設備內存不足的解決方案。
IT之家了解到,看門狗軟件是一種監控程序,可定時查看設備的運行狀況,當遇到不可恢復的錯誤時,就發出重啟信號來解決問題,在軟件中具有最高優先級。
郵件中指出,新的看門狗將不會執行硬重啟,而是采取 "預先定義的操作" 來嘗試取消不重要的進程,該方法采用了對 "oom_score_adj" 監控來執行相應操作,看門狗會關閉具有最高 "oom_score_adj" 的進程。
"oom_score" 是 Linux 內核分配給每個運行中的進程的分數,數字越大則表示該進程的內存使用越高,而 "oom_score_adj" 是在 -1000 到 1000 之間的數字,數字越大意味著該進程越不重要。
當 "oom_score" 和 "oom_score_adj" 相結合時,就能找出內存占用較大且較不重要的進程,從而進行內存釋放。