Fedora 34計劃利用Systemd-OOMD策略改善低內存環境下的體驗
systemd 247發布了新的內存外守護程序(systemd-oomd),而對於明年Fedora 34版本來說,很可能會在所有狀態下中默認啟用。systemd-OOMD旨在改善Linux低內存/OoM體驗,它基於Facebook最初為他們的Linux服務器編寫的代碼適應Linux桌面內存壓力的場景。
systemd-oomd是為了改善Linux的內存不足/內存壓力行為而開發的,基於Facebook的內存不足守護程序代碼,已經擴展到不僅適用於Linux服務器,也適用於桌面系統。systemd-OOMD可以監測資源爭用情況,當內存/SWAP壓力超過預定義的閾值時,可以殺死選定的進程。
與systemd 247一起,該功能被認為是實驗性的,但考慮到Fedora 34要到春季才會推出,開發者相信它屆時將閃亮登場。變更提案概述了他們為所有Fedora 34所有版本默認啟用systemd-oomd的計劃。該提案是當所有任務的總內存壓力超過指定閾值並持續10秒時,就會殺掉選定cgroup下的進程,Swap配置處理也將被啟用。
systemd-oomd守護進程會對啟用了OOMD的cgroups進行監視,並根據內存壓力或交換使用情況進行消殺。systemd-oomd行為可以通過新的oomd.conf配置文件進行配置。這個守護進程只有在設置了EnableOomdKill的情況下才會殺死組,因為顯然不想因為內存使用情況而隨機殺掉進程。
更多關於建議的systemd-oomd集成的細節,請通過最新的提案去了解。
Fedora 工程和指導委員會還沒有評估這個提案,但考慮到他們總是傾向於快速發布新的systemd 功能,而且紅帽同時又僱傭了關鍵的systemd 開發人員,可以肯定他們會在下一個Fedora 版本中批准這個全系統的變化。