In computer science, Memory Leakage occurs when a computer software or program consumes required memory but unable to memory after completing its task or when no longer needed to Operating System. There are two types of Memory Leakage. One is Virtual Memory Leakage and another is Real Memory Leakage. |
||||||||||||||||||||
Now first Identify cached memory or unused memory by executing, |
||||||||||||||||||||
# free -m |
||||||||||||||||||||
|
||||||||||||||||||||
Flush file system buffers by executing, |
||||||||||||||||||||
# sync |
||||||||||||||||||||
Kernels 2.6.16.x and newer versions of kernel provide a mechanism to have the kernel drop the page cache and/or inode and dentry caches on command, which can be helpful to free up a lot of memory. |
||||||||||||||||||||
To free page cache: |
||||||||||||||||||||
# echo 1 > /proc/sys/vm/drop_caches |
||||||||||||||||||||
To free dentries and inodes: |
||||||||||||||||||||
# echo 2 > /proc/sys/vm/drop_caches |
||||||||||||||||||||
To free page cache, dentries and inodes: |
||||||||||||||||||||
echo 3 > /proc/sys/vm/drop_caches |
||||||||||||||||||||
Above commands are non-destructive and will only release unused memory. As we have used sync, so it will flush all Dirty Objects which are not free able and make it as unused memory. |