我一直在使用CentOS 7,其内核版本为3.10。为了检查内核版本,我输入了'uname -r‘,命令显示了3.10.0-957.1.3.el7.x86_64
据我所知,LinuxVersion3.14引入了MemAvailable度量。
但是,我运行了/proc/meminfo,这个命令显示了MemAvailable度量。
MemTotal: 3880620 kB
MemFree: 3440980 kB
MemAvailable: 3473820 kB为什么我的linux显示MemAvailable度量?我的Linux内核低于3.14
发布于 2018-12-23 09:37:05
内核将自己标识为3.10,因为这是RHEL 7(和CentOS 7)维护的基线ABI。ABI被保存下来,以便,除其他外,用RHEL 7的早期版本构建的内核模块将继续工作,就像在以后的版本中一样。
但是,在不破坏ABI的情况下,可以将有用的内核特性从新内核移植到RHEL内核。这包括MemAvailable,它甚至已经被支持了RHEL 6中的“2.6.32”内核!每个发行版内核中的更改在发行说明中都有详细说明;例如,请参见RHEL 7.6‘S内核的变化。
有关MemAvailable本身的解释,请参见如何获得跨发行版可移植的可用内存量?
发布于 2018-12-23 07:54:43
这个度量为您提供了关于无需交换就可以使用的应用程序内存的最大大小的估计。从这个地方
估计有多少内存可用于启动新应用程序,而不进行交换。根据MemFree、SReclaimable、文件LRU列表的大小以及每个区域中的低水印进行计算。估计数考虑到系统需要一些页面缓存才能正常工作,而且由于正在使用的项目,并不是所有可收回的板子都可以收回。这些因素的影响因系统而异。
问内核开发人员/RedHat公司为什么更好?
通常,RH会做很多支持移植的工作,使用旧版本的内核。
https://unix.stackexchange.com/questions/490565
复制相似问题