# FreeBSD 7.1 32Bit only 3.49GB RAM



## garrisson (Jan 8, 2010)

Hi
I got a root-server with 16GB ram. Fact is that it shows me only 3.49GB in Webmin. I've read in an other freebsd board, that on freebsd every process can adress 4gb of ram. Now I asked myself whether this is rigth or not.
Thanks for helping!
garrisson

PS:I have to use the 32bit version, because the program, that's running on it only works with 32bit.


----------



## mk (Jan 8, 2010)

you need PAE


----------



## garrisson (Jan 8, 2010)

hmm, can u tell me a bit more exactly what this is? Sorry for my bad knowledge of freebsd, but I'm quite new on this system.


----------



## Beastie (Jan 8, 2010)

Of course it's true the 32 bit versions of FreeBSD (and any other system) can only use 4GB since 2^32 = 4,294,967,296 bytes = 4GB.

And you need to enable pae(4) (Physical Address Extensions) like mk said. But every process is still limited to 4GB.


----------



## michaelrmgreen (Jan 8, 2010)

start here : http://www.freebsd.org/cgi/man.cgi?query=pae&sektion=4


----------



## garrisson (Jan 8, 2010)

Ok, thank you for your fast responses! I think I will have to take a deeper look into freebsd, so far as I see.
If you could give me some tipps with configuring an own freebsd kernel, I would be really pleasured


----------



## FBSDin20Steps (Jan 8, 2010)

Is there a special reason... that you use the 32-Bit version?


----------



## michaelrmgreen (Jan 8, 2010)

Here's your starting point : http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/index.html

This is the section on compiling the kernel : http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-building.html

Here's a useful thread over on Daemonforums : http://www.daemonforums.org/showthread.php?t=3042


----------



## DutchDaemon (Jan 8, 2010)

Can't you run it on 64-bit with 32-bit support compiled in the kernel?


```
options         COMPAT_IA32             # Compatible with i386 binaries
```


----------



## FBSDin20Steps (Jan 8, 2010)

michaelrmgreen said:
			
		

> Here's your starting point : http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/index.html
> 
> This is the section on compiling the kernel : http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-building.html



Hey man, let me step aside before you throw the handbook at him. :e


----------



## garrisson (Jan 8, 2010)

xD. I have to use the 32bit version, because the programm i want to use is only running on 32bit.



> Can't you run it on 64-bit with 32-bit support compiled in the kernel?



From this I never heard, so I don't know wheter this would work or not..
greetz


----------



## dennylin93 (Jan 9, 2010)

Try using amd64 and run the program with 32-bit support. PAE doesn't seem to be very stable.


----------



## gordon@ (Jan 9, 2010)

You can run 32-bit binaries on 64-bit systems just fine. If you want to use 16GB of RAM, you are far better of using the amd64 install than PAE.


----------



## phoenix (Jan 9, 2010)

64-bit AMD and Intel CPUs can run in 3 different modes:

native 64-bit mode, where the CPU runs in 64-bit mode, running a 64-bit OS, using only 64-bit applications
compatible 64-bit mode, where the installed OS is 64-bit, and can run 64-bit applications, but can also run 32-bit applications (so long as the OS is configured to allow 32-bit applications to run)
native 32-bit mode, where the CPU runs in 32-bit mode, running a 32-bit OS, using only 32-bit applications
This is the beauty and genius of AMD's 64-bit extensions to Intel's i386 CPU architecture.    AMD CPUs support hybrid/compatible mode better than Intel CPUs, but both can work like this.

64-bit FreeBSD includes support for running 32-bit applications in the default install.

However, each 32-bit program is still limited to only 4 GB of memory.  But, you can run multiple 32-bit applications at once, each with their own 4 GB of memory space.

The only way to really use the 16 GB of RAM to its fullest is to install the 64-bit version of FreeBSD.  The other option is to remove 12 GB of RAM (leaving just 4 GB) and to use the 32-bit version of FreeBSD.


----------



## garrisson (Jan 9, 2010)

Hmm, I will try amd64.


----------



## FBSDin20Steps (Jan 9, 2010)

Thanks


----------



## garrisson (Jan 13, 2010)

So, I tried severl times the amd64, with freebsd8.0 and 7.1. The program, I want to ron on, just doesn't work..
So I think I'm going to try the PAE method. My problem is just, that I'm not sure how to complie my own kernel, I think there can my faults be done..
So, if you can help me with this, I would be very thankful


----------



## Beastie (Jan 13, 2010)

garrisson said:
			
		

> So, if you can help me with this


The handbook can. Read the entire chapter. And more specifically, check 8.6.1.


----------



## garrisson (Jan 13, 2010)

hmm, ok then I will take a deeper look to it.., and then ask questions


----------



## gordon@ (Jan 15, 2010)

What program are you using that isn't working? What does it do when you try to run it?


----------



## garrisson (Jan 24, 2010)

I tried now several times to build a custom kernel with PAE support, but it doesn't work. After reboot, the server doesn't awake and has to be started by the hoster. I don't know, what I'm missing, or where the fault is, because when I compile the kernel, it doesn't give me an error out.
Can give you me an Example Configuration of an PAE Kernel?
This are the specs of the server:

Intel(R) Xeon(R) CPU E5405 @ 2.00GHz
Supermicro X7DCA-L
16GB RAM
WDC WD7501AALS-00E3A0/05.01D05 -->2 times
-18ca:0021 XGI Technology Inc. (eXtreme Graphics Innovation) Unknown device: 0021
-8086:2935 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2
-8086:2920 Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA IDE Controller
-8086:2930 Intel Corporation 82801I (ICH9 Family) SMBus Controller
-8086:2948 Intel Corporation 82801I (ICH9 Family) PCI Express Port 5
-8086:2926 Intel Corporation 82801I (ICH9 Family) 2 port SATA IDE Controller
-8086:293a Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1

I hope, this list can help you 
greetz

_Edit:_
*@ gordon*:
It's an online multiplayer game. I would run on 64bit, but only with the right libs, but I don't have those libs.. I put a list of the libs, I need to have as attachmet to this post.


----------



## gordon@ (Jan 27, 2010)

Try installing amd64, then install the misc/compat5x port. The list of libraries you have are from that port and it needs to be installed or your program won't run.

Alternatively, you could give us more information about what is not working (error messages, pertinent output when you try to run the program on an amd64 host, etc). Without you being more forthcoming with the information, we can't be helpful in a solution.


----------

