GDSX Manual
Service Routines
Extended General Device Support (GDSX) Manual–134303
8-21
DO^CP
•
If you want USCODE to provide calls to ^AWAITIO[X] in order to wait for I/O
completion on ^DEVICEINFO2, ^FILE_GETINFOBYNAME_, and
^PROCESS_CREATE_ service routines, as would be done for typical nowaited
Guardian procedure calls, you must set the PROCNOWAIT configuration parameter
to 1.
If you want TSCODE to supply AWAITIO[X] calls to complete these nowaited I/Os
on behalf of USCODE, you set PROCNOWAIT to 0. See “PROCNOWAIT” on
page 2-67 for more information.
DO^CP
This procedure automatically does a GET^CPSEM, checkpoints whatever is in the
checkpoint buffer to the backup process, and then automatically does a GIVE^CPSEM.
The call to GIVE^CPSEM is not done if the call to GET^CPSEM determined that the
calling task already owned the checkpoint semaphore when GET^CPSEM was called.
Unlike ^CHECKPOINT, a restart point is not established at the statement following the
call to DO^CP.
At the time that DO^CP is called, you should already have queued data for
checkpointing by calling Q^CP or Q^CPX, both of which copy data to the TSCODE
checkpoint buffer. The size of the checkpoint buffer is specified by the MAXCPSIZE
configuration parameter. See the description of Q^CP[X] for more information.
status returned value
INT:value
indicates the outcome of the call. The value of status is one of the following:
Considerations
•
DO^CP causes the calling task to be suspended.
Caution. If a task owning one or more semaphores stops, the primary GDSX process stops.
If a task owning one or more semaphores faults with noretn equal to 1 in a call to FAULT, the
primary GDSX process stops.
Caution. Use ^CHECKPOINT(2) instead of Q^CPX and DO^CP to checkpoint extended
memory buffer pools. As DO^CP checkpoints directly across to the backup process, using
Q^CPX and DO^CP to checkpoint extended memory buffers works only for pool areas
allocated in exactly the same area of memory in both the primary and the backup.
status := DO^CP
0 The checkpoint failed
1 The data queued in checkpoint buffer was successfully checkpointed to the
backup process