Linux

為什麼 /proc/meminfo 在 Kernel Version 3.10 下顯示 MemAvailable?

  • December 23, 2018

我一直在使用 CentOS 7,它的核心版本是 3.10。要檢查核心版本,我輸入了“uname -r”並顯示了命令3.10.0-957.1.3.el7.x86_64

據我所知,MemAvailable公制是在 Linux 核心版本 3.14 中引入的。

但是,我跑了/proc/meminfo,這個命令顯示了MemAvailable度量。

MemTotal:       3880620 kB
MemFree:        3440980 kB
MemAvailable:   3473820 kB

為什麼我的 linux 顯示MemAvailable指標?我的 Linux 核心低於 3.14

您的核心將自己標識為 3.10,因為這是為 RHEL 7(和 CentOS 7)維護的基線 ABI。保留 ABI 以便除其他外,使用早期版本 RHEL 7 建構的核心模組將在以後的版本中繼續按原樣工作。

但是,如果在不破壞 ABI 的情況下可以做到這一點,則有用的核心功能會從新核心向後移植到 RHEL 核心。這包括MemAvailable,它甚至已被反向移植到 RHEL 6 中的“2.6.32”核心!發行說明中詳細說明了每個發行版核心中的更改;例如,參見RHEL 7.6 核心中的更改

有關其MemAvailable自身的解釋,請參閱如何跨發行版以可移植的方式獲得可用記憶體量?

引用自:https://unix.stackexchange.com/questions/490565