GDSX (Extended General Device Support) Manual

Service Routines
Extended General Device Support (GDSX) Manual529931-001
8-3
Intertask Communication
GET_PROCESS_HANDLE_FROM_NAME_
GET_PROCESS_HANDLES_CPU_
GET_PROCESS_HANDLES_NODE_
MAKE_PROCESS_HANDLE_NULL_
PROCESS_HANDLE_IS_NULL_
Intertask Communication
TSCODE provides a set of procedures to support communication between TSCODE
and USCODE, as well as communication among user tasks. These procedures make
it possible for a DEVICE^HANDLER task to communicate with a device on a line as if
there were no LINE^HANDLER task involved. They also provide a mechanism for a
LINE^HANDLER to efficiently handle several different types of asynchronous events.
The procedures supported are:
GET^ITC^FCB WRITE^ITC^MESSAGE[X]
ITC^OPENX SEND^ITC^MSG[X]
^LISTEN WAIT^EVENT
NOTIFY^IO^COMPLETION WAKE^TASK
IOCB Maintenance
The following procedures allow USCODE to acquire and release I/O control blocks for
I/O operations:
ALLOCATEIOCB
DEALLOCATEIOCB
List Manipulation
You can define and maintain linked lists by means of the following procedures:
DELETE^[X]ITEM
INIT^[X]LIST
INSERT^[X]ITEM
Pool Management
Because the working stack images of tasks are swapped to and from an extended data
segment, I/O operations must be performed by means of global buffers, and large
amounts of data local to tasks are best maintained somewhere other than the tasks’
stack images. To facilitate the efficient use of memory by both TSCODE and
USCODE, TSCODE provides local memory pools and extended data segment memory
pools, as well as the following memory pool management procedures:
BOUNDS^CHECK GETEXTPOOL PUTEXTPOOL
CHANGE^BUFF^OWNER[X] GETEXTPOOLX PUTLOCALPOOL
CHECK^BUFFER^BOUNDS GETLOCALPOOL