As by the time, I've learned that Linux works by caching apps by using a lot of RAM and then it reallocates the new stuff by cleaning the old cached pages from memory as compared to other OSs. With 2 gigs of RAM often I see the free memory only as 100-400MB. Using TOP or PS, it doesn't look like any program or process is using excessive memory (the highest process is seen with 1-2% total memory). *So, my questions are:*
what programs are using that much of memory? (or cached memory) Is that really due to a lot of cache in the memory *if yes, then, is there a way to parse the cache to findout what applications are eating up the cache?* *how to free the cached memory?*
*Currently, here are the details:*
Top two high mem processes only using 2.6% of RAM.
[root@Ether ~]# ps aux | sort -nrk4 | head -2 abbask 5922 0.0 1.4 364300 28312 ? S Aug19 0:00 /usr/bin/python -E /usr/bin/sealert -s ntop 4914 0.0 1.2 332752 24760 ? Ssl Aug19 0:00 ntop -d -L @/etc/ntop.conf
[root@Ether ~]# head -5 /proc/meminfo MemTotal: 1913856 kB MemFree: 500612 kB Buffers: 169720 kB Cached: 751000 kB SwapCached: 0 kB
[root@Ether ~]# free -m total used free shared buffers cached Mem: 1869 1380 488 0 165 733 -/+ buffers/cache: 480 1388 Swap: 1983 0 1983
*Total percentage memory for all the processes, being used is 15.5% only.
*[root@Ether ~]# ps aux | awk '{print $4}' | grep [0-9] | tr -s "\n" "+" | awk '{print $1 0 }' | bc 15.5*
*