If most of the answers you got so far make any sense, then I've totally misunderstood what you're trying to do. Can you be clearer about that.
Quote:
Originally Posted by morfeus80
I'm working in a 64bit cluster with 32Gbytes of memory, but I have to run a 32bit software.
|
The way I interpreted that is you are running a 64-bit Linux on 64-bit hardware, but want to run 32-bit programs within it. Is that correct? Most 64-bit Linux distributions are "multilib" meaning they have no problem running 32-bit programs.
Or did you mean you want to run a completely 32-bit environment (kernel and all programs) on 64-bit hardware? In that case, the "PAE" answers you got are important.
Or do you want to run a 32-bit kernel virtual inside a 64-bit one, or something else stranger than the first two guesses above?
Quote:
Therefore I type "setarch i386"
|
I looked up what that meant, and if I understood it correctly, it shouldn't be necessary nor even helpful for any of what I think you might be trying to do. In a 64-bit multilib system, you should be able run 32-bit programs by just running them.
Quote:
The problem now is I can use just 4Mbytes of memory, but I need more.
|
We assume you mean 4GB not 4MB. But 4GB per what?
The limit of 4GB per process (when running 32-bit programs under a 64-bit OS) is forced by the architecture. You aren't going to get around it. If the 32-bit program were running under a 32-bit kernel you'd have just 3GB per process.
But if you just want a total over 4GB (multiple processes of under 4GB each, adding up to over 4GB) that's easy. With a 64-bit kernel or a 32-bit PAE kernel, it just works that way.