从这里移动: https : //stackoverflow.com/questions/7070640/how-to-fix-disappeared-memory-after-linux-2-6-18-kernel
我认为目前有一个已知的问题,自2.6.18内核以来有一些内存显示问题:
例如:
dmesg | grep Memory [ 0.000000] Memory: 82008k/98304k available (3091k kernel code, 448k absent, 15848k reserved, 2471k data, 460k init)
这是使用Xen PV的96MB RAM VPS上的实际内存量。
但是,使用free -m时,这里是实际输出:
free -m total used free shared buffers cached Mem: 86 74 11 0 8 48 -/+ buffers/cache: 18 68 Swap: 127 0 127
看来,10MB的内存被免费的-m输出“吃掉”了。
有没有人有任何解决办法解决这个问题?
谢谢!
开始的时候只有90MB,注意到内核对内核表使用的内存数量,以及在内存中占很大比例的驱动程序中编译的内存数量。 这个问题很容易通过调整来解决。
如果你正在寻求减less与内核挂钩的内存量,你应该研究构build自己的内核。 从这个问题中不清楚你使用的是什么操作系统,但是如果你是在CentOS或者其他一些消费者的linux上,那么内核可能有一些你可能没有使用的东西。 下面是构build一个更简单的内核的一些资源:
http://elinux.org/Kernel_Size_Tuning_Guide
http://www.yolinux.com/TUTORIALS/LinuxTutorialOptimization.html