GDSX Manual

Service Routines
Extended General Device Support (GDSX) Manual134303
8-40
GIVE^CPSEM
The following condition code settings are valid
GIVE^CPSEM
The checkpoint semaphore maintained internally by TSCODE guarantees that only one
task (system or user task) can initiate a checkpoint operation until the semaphore is
released by means of GIVE^CPSEM. This procedure allows a task to release the
checkpoint semaphore.
Consideration
Use the SCF STATS command to see if any tasks are waiting for resources. For
example:
-> STATS PROCESS $GDSX-process-name
INIT^[X]LIST
The INIT^LIST and INIT^XLIST procedures initialize a linked list. INIT^LIST is
intended for use with lists in global memory, while INIT^XLIST is intended for lists in
extended memory.
list input
is a pointer to the header of the list to be initialized.
= CCE indicates that the task successfully released break ownership for its terminal.
< CCL indicates one of the following conditions:
An I/O error occurred on the SETPARAM issued by TSCODE to release
break ownership (the error number can be obtained by calling ^FILEINFO).
The checkpoint semaphore could not be obtained when the backup process
was to be updated with the break ownership information (only applies if
GDSX is run as a process pair).
Caution. After checkpointing data to the backup process, the task owning the checkpoint
semaphore must call GIVE^CPSEM to release the semaphore or else the checkpointing
facilities will be locked up.
CALL GIVE^CPSEM
CALL INIT^[X]LIST ( list ); !
i
INT:ref (Use with INIT^LIST)
INT .EXT:ref (Use with INIT^XLIST)