Guardian Procedure Calls Reference Manual
Considerations
• Invalid parameter
If an attempt is made to checkpoint the data area used by CHECKPOINTMANY for
system-oriented stack maintenance, it returns an "invalid parameter" error (that is,
status.<0:7> = 3).
If status.<0:7> = 3, then status.<8:15> has this meaning:
error in stack-origin parameter= 1status.<8:15>
error in word [n-2]= n,
n > 1
If the descriptors pair describes a file synchronization block (first word of pair = -1, second
word of pair = file number), then:
◦ If the filesync block makes the checkpoint exceed 32,500 bytes, then descriptors [n-2] is
the first word of the pair.
◦ If any other error occurs (such as GETSYNCINFO fails or bad file number), then
descriptors [n-2] is the second word of the pair.
If the pair describes a buffer (first word = address, second word = length), then:
◦ If the address, or the address plus the length, results in a bounds violation, then
descriptors[n-2] is the first word of the pair.
◦ If this buffer makes the total amount of data to be checkpointed (data + sync blocks +
stack) exceed 32,500 bytes, then descriptors[n-2] is the first word of the pair.
For example:
Figure 5 Invalid Parameter Location
• Maximum checkpoint size
The largest stack area or data item that can be checkpointed is 32,500 bytes. Additionally,
the sum total of the sizes of the stack area and each checkpoint item, plus an allowance of
20 bytes for each item, can not exceed 32,500 bytes. An item in this context means either a
data item (of user declared size) or a file synchronization block of varying sizes.
• The CHECKPOINTMANY procedure allows checkpointing of both the process' data stack and
any number of blocks.
CHECKPOINTMANY Procedure (Superseded by CHECKPOINTMANYX Procedure) 147