Concept of free m command in Linux | Unix Linux Forums | Red Hat

  Go Back    


Red Hat Red Hat is the world's leading open source technology solutions provider with offerings including Red Hat Enterprise Linux (RHEL), Fedora, open source applications, security and systems management, virtualization, and Services Oriented Architecture (SOA) solutions.

Concept of free m command in Linux

Red Hat


Closed Thread    
 
Thread Tools Search this Thread Display Modes
    #1  
Old 01-17-2013
RHCE RHCE is offline
Registered User
 
Join Date: Dec 2012
Last Activity: 24 February 2014, 5:15 AM EST
Posts: 76
Thanks: 11
Thanked 0 Times in 0 Posts
Concept of free m command in Linux

I wanted to know the concept of free m command as there are different rows of Mem, -/+ buffers/cache & Swap in the output. As an example, it is showing 195 as free Mem in my server but 13850 in the free section of the -/+ buffers/cache row. The output needs in depth knowledge of the different parameters of the command.

I hope, my question is clear.

Please revert with the reply to my query.

Regards
Sponsored Links
    #2  
Old 01-20-2013
sixstrings sixstrings is offline
Registered User
 
Join Date: Jan 2005
Last Activity: 21 January 2013, 7:09 PM EST
Posts: 64
Thanks: 0
Thanked 5 Times in 5 Posts

Code:
             total       used       free     shared    buffers     cached
Mem:          3816       3569        247          0        118       2397
-/+ buffers/cache:       1053       2763
Swap:         3823         13       3810

ok, this is the output for my laptop.

The free command is used to display the amount of free and used memory on a system. The -m option tells free to print the output in MB.

My laptop has 4Gb currently.

Linux attempts to utilize all of the memory on the system and not leave any sitting idle, like some other operating systems have done over time. Memory will be used for the OS and applications, but the remainder will be used as "buffers and cache". The kernel will keep items in memory that are needed often or are predicted to be needed for faster access. The memory used for "buffers and cache" is available for applications or the OS to use. If required, it is quickly flushed and used.

To find the actual available memory on my system, take the last number on the Mem line (247) and add it to the last number on the Mem line (2397). So currently, I have about 3G of memory available.

Most of this information is available via the manpage and simple google searches. Take a look and you should have all of your questions answered.
Sponsored Links
    #3  
Old 01-21-2013
RHCE RHCE is offline
Registered User
 
Join Date: Dec 2012
Last Activity: 24 February 2014, 5:15 AM EST
Posts: 76
Thanks: 11
Thanked 0 Times in 0 Posts
Thanks for your answer. I wanted to add something, if we add 118 to the total of 2397 & 247, it would be 2762 which is very near the free memory on line 2, 2763. Please confirm on this.

Also, as per your answer, the architecture of Linux is to utilize all the memory on the system.
    #4  
Old 01-21-2013
Tommyk Tommyk is offline
Registered User
 
Join Date: Aug 2011
Last Activity: 8 April 2014, 11:18 AM EDT
Location: Ripon, North Yorkshire
Posts: 146
Thanks: 4
Thanked 14 Times in 14 Posts
the line +/- buffers/cache basically shows the memory used and free without taking into account how much is used for buffers or cache.

This is because cached memory is not actually used memory, it is information that is stored for quick retrieval if requested again from previous operations but dumped straight away if memory is required to be written to. This process makes the system run quicker as queries are using data stored on RAM instead of hard disk which is obviously a much quicker process.

So yes, top line free + cached = free on 2nd line
Sponsored Links
    #5  
Old 06-18-2013
RHCE RHCE is offline
Registered User
 
Join Date: Dec 2012
Last Activity: 24 February 2014, 5:15 AM EST
Posts: 76
Thanks: 11
Thanked 0 Times in 0 Posts
Quote:
Originally Posted by sixstrings View Post
I had a query in this, what if the laptop had 8 GB memory instead of 4 GB, would Linux still attempt to utilize all the memory.

I hope, my query is clear that if the available memory is a very large number, would Linux still attempt to utilize all the memory.
Sponsored Links
    #6  
Old 06-18-2013
jlliagre jlliagre is offline Forum Advisor  
ɹǝsn sıɹɐlos
 
Join Date: Dec 2007
Last Activity: 24 April 2014, 10:11 AM EDT
Location: Paris
Posts: 4,364
Thanks: 15
Thanked 443 Times in 406 Posts
Linux will use all the installed memory if you install a 64 bit kernel, otherwise, you need to use a PAE kernel in which case the limit is 64 GB.
Sponsored Links
    #7  
Old 06-18-2013
RHCE RHCE is offline
Registered User
 
Join Date: Dec 2012
Last Activity: 24 February 2014, 5:15 AM EST
Posts: 76
Thanks: 11
Thanked 0 Times in 0 Posts
Thanks for your answer. Does it mean that if it is a 64 bit kernel, it could use even 40 GB if the laptop has that much memory? Also, does it mean that a PAE kernel would use maximum of 64 GB of memory even if the laptop/ machine had 128 GB of memory?

I hope my queries are clear that

1) A 64 bit kernel would use even upto 40 GB of memory if I increased the laptop memory to 40 from 8 GB.
2) A PAE kernel would use only 64 GB of memory even if the laptop/machine had 128 GB of memory.

Request you to please revert.
Sponsored Links
Closed Thread

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
free memory in debian linux lhareigh890 UNIX for Advanced & Expert Users 1 07-01-2011 01:08 PM
Linux free download govindts UNIX for Dummies Questions & Answers 1 04-23-2009 05:10 PM
Concept of link count in linux vaibhav.kanchan Linux 1 12-11-2008 01:28 PM
Determining free(available) memory in MV linux trancedeejay Programming 11 02-20-2006 03:56 AM
How to Use the Free Command in Linux LiTo UNIX for Dummies Questions & Answers 1 11-03-2004 07:54 PM



All times are GMT -4. The time now is 12:28 PM.