“Top” (Go to console and type top) became a handy tools to track what applications that currently running in our server. But, if we’re using it for showing how much actual memory usage in server, that’s WRONG!
Why?
First, see this screenshot of my Fedora with my total RAM is 3.6 GB:
System Monitor: (Usage: 1.1GB)
See a different here? Well, if you google, actualy you can find a few articles already share about this. But for your information, Linux kernel use available memory for disk cache. Meaning, if you have 4GB RAM, your application ate 1GB, then for 3GB will be used for disk cache. Why disk cache? Because hardisk is slow here (SSD is pretty fast anyway). By cache them on memory, it will make the process became faster. But, you’re opening new application, then immediately Linux kernel will give this available memory to your new application.
Reference:
http://linuxtoolkit.blogspot.sg/2010/02/understanding-memory-usage-from-top-and.html
http://vivekrajendran.wordpress.com/tag/linux-incorrect-memory-usage/