LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Kernel (https://www.linuxquestions.org/questions/linux-kernel-70/)
-   -   Linux VM limits (https://www.linuxquestions.org/questions/linux-kernel-70/linux-vm-limits-566825/)

debulu 07-05-2007 08:45 AM

Linux VM limits
 
I am trying to do a continuous malloc() to allocate as much memory I can. But After allocating nearly 3G , malloc() returns ENOMEM. But I can see a lot of memory still available(By top).
I am using 2.6.x kernel on a 32 bit x86 box. Is it the 32-bit limit?. ulimit gives me 'unlimited' in both max memory size and virtual memory.
Is there anyway I can increase this limit? (by /proc or something)

Hope its there... If not Linux being a monolithic guy is not doing good on monolithic applications..

Thanks and Regards

macemoneta 07-05-2007 11:06 AM

In 32-bit mode, Linux limits user virtual memory to 3GB/process. In 32-bit PAE mode, the limit is 64GB. In x86_64 (64-bit) the limit is about 8 million TB.

I don't understand the "monolithic" reference, as this is an application design issue, and the kernel structure has no bearing on a virtual memory discussion.

debulu 07-06-2007 07:34 AM

Thanks macemoneta !!!

I mentioned 'monolithic' is just in a architecture sense.One process doing everything requires more memory ... thats why

macemoneta 07-06-2007 10:38 AM

Quote:

Originally Posted by debulu
One process doing everything requires more memory ... thats why

I suggest you study up on that some more. Compare memory utilizations across kernel architectures, and you will find that a monolithic kernel is difficult to get correct... but it is also the most efficient. No message passing (which requires memory), no coordination data structures (which require memory).


All times are GMT -5. The time now is 09:32 PM.