Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I ordered a server from fdcserver. Then I realized that, unless changed, fdcserver actually provides 32 bit operating as default.

I logged in using SSH, typed uname -m, and to my horror I saw that I was actually running a 32 bit Linux.

I will definitely change this near the end of the month. Meanwhile, what are the limitation of this 32 bit operating system?

Can I use all 32 GB of memory the server has installed?

share|improve this question
add comment

2 Answers

up vote 9 down vote accepted

32-bit x86 CPUs (since the Pentuim Pro) support up to 64 GiB RAM (using PAE). (The "CONFIG_HIGHMEM64G" kernel option needs to be set to actually use it). Each application can only see 4 GiB at a time (and some of that 4GiB must be used for other things, the exact amount depending on the "Memory split" kernel setting)

64-bit operating systems have some other advantages as well, such as access to extra registers on the CPU, which can speed up some types of applications (by allowing more temporary data to be kept in the much faster registers, rather than main RAM)

share|improve this answer
1  
The 4 GiB limit especially becomes a problem for MySQL, MongoDB, and probably others. –  mmckinst Jan 3 '13 at 5:38
10  
If you ordered 32G ram, there is really no reason to use 32bit OS. 64bit OS should be default without customer asking. –  John Siu Jan 3 '13 at 5:43
1  
Adding to John Siu's comment, I would question any host that would setup a server with a 32-bit OS knowing that it was getting 32GB of RAM. A desktop system would even be questionable but definitely not with a server. –  KayakJim Jan 3 '13 at 13:56
add comment

All your ram is accessible even with a 32bit kernel. The main difference is probably that any application cannot address more than 3gb of memory. I don't know if you really use such applications (usually databases, or graphics applications), otherwise you may ignore the problem. Please note that 64bits applications requires more memory (because registers and addresses are larger), and load slower from disk (because the binary files are larger).

So, before leaving the 32bits userspace, better check your requirements. Moreover, many Linux distribution provide 64bits kernels to be used with a 32bit userland: if you are referring to PC, then check how Debian provide amd64 kernel series for i386 (32bit) architecture as well.

share|improve this answer
    
what about php and apache? There are tons of process and they may count as one program. –  Jim Thio Jan 4 '13 at 0:57
1  
@JimThio, could you better explain what is your worry? php and apache usually do not require much memory at all. tons of processes are perfectly managed by 32bits linux kernels. I think that even 64bits kernel do not have larger PIDs, so probably they cannot run more processes at the same time. If you are referring to shared memory among the various apache threads, this is not a problem, usually, since it is way lower than memory given to databases. –  eppesuig Jan 4 '13 at 8:53
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.