how to solve RAM problem in juniper NSM server?????

i m running NSM server with version 2010.1 on RHEL 5.4
NSM server running ok but i m suffering from memory problem.
i m running server under
core 2 Duo intel processor
1 TB harddrive

 i need help to solve this problem
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Duncan RoeSoftware DeveloperCommented:
What is the actual problem that you have with this? The only thing wrong that I can see is NSM reporting a memory warning which IMO is unwarranted.
vipulranaAuthor Commented:
this is the problem i want to solve in NSM.
memory usage incerasing everyday because we have more logs everyday due to a lots of traffic.
i installed 4GB RAM with RHEL 5.4 .
someone said this isuue related with OS.
when i checked with free -t command on RHEL it shows me
[root@NSM ~]# free -t
                   total         used           free     shared    buffers     cached
Mem:       2977492    2889736      87756          0     138212    1146032
-/+ buffers/cache:    1605492    1372000
Swap:      5013496          0    5013496
Total:     7990988    2889736    5101252
i need to solve this problem.
Duncan RoeSoftware DeveloperCommented:
Yes you do have a problem in that you can only see 3GB of memory. However your system is working fine with that. It's only really using a shade over 1.5GB. The rest is buffers and cached file blocks, all of which are immediately available for some other purpose if so required (except for buffers that need to be written back). That "-/+ buffers/cache" had me confused for years, but this is what it really means:

Used memory minus ( buffers plus cache ) = 1605492
Free memory plus buffers plus cache = 1372000

The reason you can only see 3GB is that you have a kernel with High Memory Support configured off
This is the help page for that option:



Linux can use up to 64 Gigabytes of physical memory on x86 systems.
However, the address space of 32-bit x86 processors is only 4
Gigabytes large. That means that, if you have a large amount of
physical memory, not all of it can be "permanently mapped" by the
kernel. The physical memory that's not permanently mapped is called
"high memory".

If you are compiling a kernel which will never run on a machine with
more than 1 Gigabyte total physical RAM, answer "off" here (default
choice and suitable for most users). This will result in a "3GB/1GB"
split: 3GB are mapped so that each process sees a 3GB virtual memory
space and the remaining part of the 4GB virtual memory space is used
by the kernel to permanently map as much physical memory as

If the machine has between 1 and 4 Gigabytes physical RAM, then
answer "4GB" here.

If more than 4 Gigabytes is used then answer "64GB" here. This
selection turns Intel PAE (Physical Address Extension) mode on.
PAE implements 3-level paging on IA32 processors. PAE is fully
supported by Linux, PAE mode is implemented on all recent Intel
processors (Pentium Pro and better). NOTE: If you say "64GB" here,
then the kernel will not boot on CPUs that don't support PAE!

The actual amount of total physical memory will either be
auto detected or can be forced by using a kernel command line option
such as "mem=256M". (Try "man bootparam" or see the documentation of
your boot loader (lilo or loadlin) about how to pass options to the
kernel at boot time.)

If unsure, say "off".

Symbol: NOHIGHMEM [=n]
Prompt: off
Defined at arch/x86/Kconfig:993
Depends on: <choice> && !X86_NUMAQ [=n]
-> Processor type and features
-> High Memory Support (<choice> [=y])

As you can see, you need to reconfigure your kernel to see your extra 1GB. Or, RHEL may come with a large-memory kernel available already - look for it in /boot or look for the configuration files in /usr/src/linux/configs/

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Cloud Class® Course: C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

vipulranaAuthor Commented:

i already upgrade kernel but same result no change

i attached kerenel file here which i upgrade

if u look at

# Firmware Drivers

# CONFIG_HIGHMEM4G is not set

i don't know how can i solve this problem???/

Duncan RoeSoftware DeveloperCommented:
Check that, on boot, your BIOS shows 4G RAM in the Power-On Self Test (POST) screen. If it does, then you are not running the kernel for which you posted the config. Please post:

1. the actual name of the file you posted as "kernel.txt"
2. the output from "uname -r"

It is possible, though unlikely, that your BIOS steals the top 1GB. I had a BIOS once which stole the top 512MB (of 4G). But the I could see the remaining 3.5GB from Linux

Hey I just discovered - I can only see 3.25GB :( And I have 8GB, with CONFIG_HIGHMEM4G set (i.e. wrong model, I should have HIGHMEM64G set as you do). Will investigate further.
19:44:24$ free
             total       used       free     shared    buffers     cached
Mem:       3371780    2509048     862732          0     694404    1386408
-/+ buffers/cache:     428236    2943544
Swap:            0          0          0
20:01:34$ echo $[3371780%(1024*1024)]
20:01:41$ echo $[3371780/(1024*1024)]

Open in new window

vipulranaAuthor Commented:
my friend if u look at image description it shows kernel version
even in kernel.txt file at begining u can see kernel version.


[root@NSM ~]# uname -r

Duncan RoeSoftware DeveloperCommented:
Oh yes, it's in a comment. Sorry - my eyes skip comments:)
Well, how interesting. I wonder if you have found a bug? The help file does say "If the machine has between 1 and 4 Gigabytes physical RAM, then answer \"4GB\" here". But I am really surprised if answering "64GB" loses (that much) memory. Please do verify how much memory BIOS finds.
(A reconfigure fixed "my" problem, as below - I am only 81152KB short of the full 8GB)
21:22:57$ free
             total       used       free     shared    buffers     cached
Mem:       8307456     501224    7806232          0      25904     253440
-/+ buffers/cache:     221880    8085576
Swap:            0          0          0
21:23:22$ echo $[8307456%0x100000]
21:24:13$ echo $[0x100000-967424] 

Open in new window

vipulranaAuthor Commented:
i check today from BIOS

i can see
Base Memory       :   640KB
Extended Memory :   2935 MB

it means motherboard detects only 3 GB.

like in windows if u have 32 bit OS it detects 3.4GB if u want full 4GB then u have to install 64 bit OS
may be  i am not sure but this weekend i will try to install 64bit RHEL and lets see whats the result comes.

Duncan RoeSoftware DeveloperCommented:
Your BIOS may be stealing the top 512MB, as my previous system did. There was no workaround. Actually it stole (or "mapped") the top 512MB addressable in 32 bits. If I had installed another 4GB, I would have seen it all, for a total of 7.5GB.
Is that "Base Memory / Extended Memory" really output by BIOS? I have never seen a BIOS do that, only DOS. You might like to check your BIOS setup to be sure it displays the POST screen.
Duncan RoeSoftware DeveloperCommented:
I would concentrate on BIOS - 23-bit Linux has no trouble seeing all memory as per my example above.
Duncan RoeSoftware DeveloperCommented:
23-bit Linux should be 32-bit of course
vipulranaAuthor Commented:
i check from POST screen
it shows only 2936MB.

Duncan RoeSoftware DeveloperCommented:
Are they 1GB memory sticks? Possibly one of them is not pushed right in
Duncan RoeSoftware DeveloperCommented:
Or possibly 1 is just a dud. Take out 2 sticks (I'm assuming they're 1GB) and see what BIOS reports. Then take them out and put in the other 2. If 1 pair shows only 1GB then try 1 at a time to find faulty stick.
Duncan RoeSoftware DeveloperCommented:
Worth trying 1 at a time if you have 2 x 2GB
vipulranaAuthor Commented:
nope i have 2 x 2 GB kingston
and i already tried with another windows machine it shows me 3.24GB .
so RAM is not a problem.

Duncan RoeSoftware DeveloperCommented:
Is that an MSI motherboard by any chance? That's what I had trouble with. I guess you've tried each stick individually and they're each 2GB?
Duncan RoeSoftware DeveloperCommented:
If you can't resolve this, you may want to consider contacting the supplier of your motherboard either for assistance or a refund. Although from what you posted earlier, your system is running fine with the memory it can see. It is very annoying not to be able to use all your RAM, I know.
vipulranaAuthor Commented:
u r right abt motherboard.i change with other motherboard and install ram now i can full 4GB RAM.
thank u for useful information.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Linux Networking

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.