Alibaba Cloud Linux 2(核心版本4.19.91-22.al7
開始)和Alibaba Cloud Linux 3的/proc/meminfo檔案內的匿名頁狀態統計資訊Active(anon)
和Inactive(anon)
發生了變化。如果您的應用程式正在使用該統計資訊,統計資訊的變化會導致變更前後查詢到的資料不一致。本文將對本次變化進行詳細說明。
變更原因
Linux kernel社區在最新的版本中對匿名頁的回收進行了最佳化,分配的匿名頁預設放置的位置由active LRU變更為了inactive LRU,因此對/proc/meminfo檔案內的統計資訊Active(anon)
和Inactive(anon)
的資料產生了影響。社區合入資訊如下所示:
社區合入版本:Linux Kernel 5.10
社區合入commit:b518154e59aab3ad0780a169c5cc84bd4ee4357e
Alibaba Cloud Linux 2(核心版本4.19.91-22.al7.x86_64
開始)和Alibaba Cloud Linux 3的/proc/meminfo檔案內的統計資訊Active(anon)
和Inactive(anon)
的資料將發生變化。
您可以在作業系統內運行uname -r命令擷取核心版本資訊。
變更詳情
Alibaba Cloud Linux 2的核心在4.19.91-22.al7.x86_64
版本之前(不包含該版本),應用程式申請的匿名頁(anon page)預設被統計到/proc/meminfo檔案的Active(anon)
中,當記憶體不足時才會被統計到Inactive(anon)
中。
當核心升級到4.19.91-22.al7.x86_64及其之後的版本時,應用程式申請的匿名頁(anon page)預設被統計到/proc/meminfo檔案的Inactive(anon)
中,當被訪問後才會切換到Active(anon)
中。因此,如果您在使用/proc/meminfo檔案內的Active(anon)
和Inactive(anon)
來統計匿名頁狀態的資料,需要對本次變化進行相應的調整。
變更影響及建議
由於統計匿名頁狀態的資訊(即Active(anon)
和Inactive(anon)
)發生變化,因此相同的應用程式在本次變更前所查詢到的Active(anon)
和Inactive(anon)
的資料,與變更後查詢的到資料將不一致。
建議您根據所使用的Alibaba Cloud Linux作業系統中最新的匿名頁狀態的統計資料,對應用程式的配置進行相應的調整。