Some time back I was using a command called meminfo in Solaris to find the memory information in Solaris. It is indeed a nice script written by schmidt  http://www.4schmidts.com/memconf.html .

Later, I moved my role from supporting Solaris systems to Linux systems and I was struggling to get the same piece of info in Linux about the memory bank/slot and how memory is present in each memory bank. Today I got an audit work to validate the system data that someone has filled about Linux servers. So, this time I couldn’t escape and I had to find a way out. I always knew that there should be info in dmidecode command, but as usual my laziness was stopping me from looking in to the output.

So finally I had to push my lazy attitude and dive in to the Info which dmidecode was giving.  I was really surprised to see that there is enough info that we can grab from the dmidecode output. So here is my analysis.

  • First check the actual memory Info from the either “top” or “free -m” command.
  • Check the “dmidecode” output for the DIMM slot and each RAM size

FREE COMMAND OUTPUT

So the below command shows that we have around 2GB of memory installed in the system.

[root@bravo]# free -m
total used free shared buffers cached
Mem: 2026 1585 440 0 222 551
-/+ buffers/cache: 811 1215
Swap: 4094 0 4094

TOP COMMAND OUTPUT

Let’s verify our understanding of memory available using the TOP command which also shows that we have approx 2GB memory approx.

[root@bravo]# top

top – 13:18:56 up 216 days, 4:12, 3 users, load average: 0.14, 0.11, 0.09
Tasks: 199 total, 1 running, 198 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.8% us, 1.4% sy, 0.0% ni, 97.4% id, 0.3% wa, 0.0% hi, 0.0% si
Mem: 2074900k total, 1623648k used, 451252k free, 227816k buffers
Swap: 4192924k total, 296k used, 4192628k free, 565160k cached

DMIDECODE COMMAND

Run the DMIDECODE command and look for the data where the word “Physical Memory Array” starts and go through each line to get detailed information. In some new systems you can also use the command dmidecode –s  memory and dmidecode –t 17 , where “s” means string and “t” means type. Let’s just use dmidecode here for now.

Summary of the memory data

——————————————————————————————-

Maximum memory that the ON BOARD memory slots can accept is = 8GB

Type of memory = DDR

Error Correction Type: Single-bit ECC

Size of each DIMM = 1024 MB (1GB)

DIMM Speed = 333 MHz (3.0 ns)

Number of DIMM slots = Total 4 DIMM slots and only 2 DIMM slots are filled with 1GB memory each

Note: where ever the Memory module is not installed the “Size” would show as “Size: No Module Installed”

——————————————————————————————-

[root@bravo]# dmidecode | more

So here is the summary of the Info that we are looking from the  Important Information we have from the dmidecode  data

Handle 0×1000
DMI type 16, 15 bytes.
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Single-bit ECC
Maximum Capacity: 8 GB
Error Information Handle: Not Provided
Number Of Devices: 4

Handle 0×1100
DMI type 17, 23 bytes.
Memory Device
Array Handle: 0×1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 1024 MB
Form Factor: DIMM

Set: 1
Locator: DIMM 01
Bank Locator: Not Specified
Type: DDR
Type Detail: Synchronous
Speed: 333 MHz (3.0 ns)
Handle 0×1101
DMI type 17, 23 bytes.
Memory Device
Array Handle: 0×1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 1024 MB
Form Factor: DIMM
Set: 1
Locator: DIMM 02
Bank Locator: Not Specified
Type: DDR
Type Detail: Synchronous
Speed: 333 MHz (3.0 ns)

Handle 0×1102
DMI type 17, 23 bytes.
Memory Device
Array Handle: 0×1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 2
Locator: DIMM 03
Bank Locator: Not Specified
Type: DDR
Type Detail: Synchronous
Speed: 333 MHz (3.0 ns)

Handle 0×1103
DMI type 17, 23 bytes.
Memory Device
Array Handle: 0×1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 2
Locator: DIMM 04
Bank Locator: Not Specified
Type: DDR
Type Detail: Synchronous
Speed: 333 MHz (3.0 ns)

So here is my learning for the day. So I am signing of for the day looking forward to learn something new tomorrow. Infact there are couple of things that I have learnt today and I would try to either share it today or tomorrow in my new post.

Also, one thing that I started believing these days is that there is no job which is small or waste of time. We just have to look at the learning that we can grab from it. I am sure every job teaches us something  might not be technical always but I am sure we would have some thing to learn from it directly or in directly.

Adios ! Amigos !

The desire to write grows with writing.Desiderius Erasmus

About these ads