Java+Virtual+Machine

toc The [|Java virtual machine] (JVM) is the platform dependent [|interpreter] of the [|Java] [|bytecode] (i.e., the [|classes]). It translates the bytecode into machine specific instructions.

 =Amount of available memory= If you start the virtual machine without any parameters it takes default values for stack and heap. In case you run into OutOfMemory exceptions, try to start your JVM with a bigger maximum heap size. (However, there's a limit, depending on your OS. See the 32-Bit and 64-Bit sections.)

 =32-bit= With a 32-Bit machine you can address at most 4GB of [|virtual memory]. Different operating systems divide up the memory further into //system/kernel// and //user space//.

From experience, you can achieve the following maximum sizes for the //heap// on Windows and Linux:
 * Windows: 1.4GB
 * Linux: 1.7GB

 =64-bit= Larger heap sizes are available when using 64-bit Java in a conjunction with a 64-bit operating system.

There is more information available [|here].