To ensure ESL is allocate a contiguous area of address space, before any memory is requested, ESL reserves the address range specified by the PRGMAX parameter within the “EslConfig.ini” file, or the environment variable of the same name. If the command line parameter “–m” is used, then the value, which is specified in bytes is used. If no PRGMAX parameter is specified, the default value of 32Mbytes is used. During execution of your program, you must ensure this pool of memory does not exceed this maximum size. It should be big enough to hold the largest amount of memory that your program could need at any given moment. Before each time ESL commits more memory, to current size plus the additional amount to be committed, is checked against the maximum program size. If the maximum size would be exceeded, the ESL does not attempt to commit any additional memory, so the application will be aborted at the memory pool has run out of space. This means that true maximum is typically one memory increment less value set by PRGMAX.