Virtual Machine Memory

The Virtual Machine Memory controls the maximum amount of memory available to the Java Virtual Machine (JVM) that is used by IDA-STEP. The setting depends of the kind of operating system (Windows or  Linux), the inner architecture (32 or 64 bit), the installed physical  memory (e.g. 2 GByte) and other installed software packages. No fixed  rule can be given about the maximum memory settings.

Figure 1. Virtual Machine Memory page

We have to distinguish between the current maximum size and the possible maximum size. The current maximum size is displayed in  this dialogue and it is less or equal to the possible maximum size.  But as explained above the possible maximum size is not know and thus can't be displayed.

The actual memory consumed and allocated by the JVM is displayed in the small Heap Status control in the status bar (see Figure 2). The lower number is the amount of memory actual in use by the JVM and the upper number the amount of memory currently allocated from the operating system. The upper number is always smaller or equal to the current maximum size. The actual number of memory in use is dynamically growing and shrinking. It can be reduced when pressing the so called Garbage Collection button (waste bin symbol).
See General preferences on how to switch the Heap Status control on and off.


Figure 2. Heap status with actual used and allocated memory

Example: Under Windows 32bit the maximum physical memory that can be managed by the operating system is about 3 GB. If you have installed more memory Windows can't take advantage of it. If you now try to set the maximum memory setting to e.g. 2.5 GB the JVM will not allow you to do so because a significant portion of the memory is reserved for the operating system. A typical maximum value under 32 Windows is 1.6 GB (or 1600 megabytes). But if IDA-STEP would allocate this whole amount of memory then other applications running in parallel would decrease in performance because windows has to swap in and out the applications between the hard disk and physical memory. If you need more memory than is available under 32 bit we recommend to switch to a 64 bit operating system with at least 6 GB.

Any change of the maximum size will only become effective after re-starting of IDA-STEP. The fields are (see Figure 1):
Note that the initial values of current maximum size and new maximum size are often not identical, even after re-start. This is because the value the JVM is asking for and what it get by the system  may differ.
When entering new values for new maximum size IDA-STEP is dynamically checking with the operating system and if the value is not accepted by the system it will indicate this by the message  "Invalid maximum memory value".
The "new maximum size" value will be stored in the file ida-step.ini  that you can find in the directory where IDA-STEP is installed. The line of interest looks like this
    -Xmx1500m
for a new maximum size of 1500 megabytes. Dependent of your kind of  installation this directory may be write protected. In this case when  you try to change the new maximum size you will see an error message like this:


Figure 3. Save Preferences dialogue window in failure case
 
If you see this message you have to change this entry manually with  some editor in protected mode.

To top


Copyright © 2007-2012 LKSoftWare GmbH. All Rights Reserved.
JSDAI is a registered trademark of LKSoftWare GmbH.