The Question is:
When i run a Cobol program, sometimes we have the following error:
I tried ti increase the values of PGFLQUO and
VIRTUALPAGECNT but doesn't work
Which sentences of the program Cobol use virtual memory?, we try to modified
The Answer is :
Every statement, every instruction, every item of data, occupies
Nearly every part of an application imaginable on OpenVMS can and
will consume some amount of virtual memory. Large data structures
and particularly large arrays of data structures do tend to be
among the larger of the more common consumers, but are certainly
not the only consumers.
If you are receiving an insufficient virtual memory error, your
application is consuming more virtual memory than is available.
This can be a result of a coding error (wrong arguments, a leak,
etc), a corruption within the run-time environment, or otherwise.
If you wish to determine use, you will want to review constructs
such as arrays and recursion as these can consume quantities of
virtual memory for the stack. Program instructions and non-stack
storage require virtual storage, as well. In the case of code
and non-stack data, you can review the compiler listings and the
image maps for the application image(s) for information on virtual
memory usage. Some library routines, such as those that allocate
memory pool or that perform SORT/MERGE operations, can also consume
quantities of virtual memory.
Whether or not you increased PGFLQUOTA and/or VIRTUALPAGECNT (and
by how much, and to what value?), you need to find the coding error,
or you need to increase the PGFLQUOTA value further. The answer
remains the same as that listed in the OpenVMS FAQ and discussed
elsewhere here in Ask The Wizard -- if you see the INSFVIRMEM
error, then you have (deliberately or unintentionally) asked for
more virtual memory or more backing storage in the pagefile (as
limited by the process PGFLQUOTA quota) than is available.
For basic debugging information, please start with topic (1661).
For information on decoding details provided to you with the
error and for general debugging information, please see topics
including (4129) and (7552).
Please review the discussion of this Insufficient Virtual Memory
(INSVIRMEM) error in the OpenVMS Frequently Asked Questions (FAQ)
document, and various of the existing topics here in Ask The Wizard
including (9565), (9571), (9501), (8892), (7857), (6524), (6507),
(6399), (5166), (3479) and likely various others.
And if you have not already done so here, please do remember to
use the OpenVMS Debugger -- this single programming tool is one
of the most important and most useful tools available to an OpenVMS
programmer. The OpenVMS Wizard strongly recommends all programmers
learn about and use the OpenVMS Debugger. (Details on the Debugger
are available in the OpenVMS documentation set -- ranging from
the basic usage and commands, to programming the debugger to wait
hours or days for particular errors or corruptions to arise, to
dynamically activating the Debugger entirely under program control.)