The ALERT routine (DMTSIG) also notifies another task
asynchronous event has taken place. In this case,DMTSIG is with an ALERT request element. GIVE/TAKE TASK-TO-TASK that an
not usedWhile the ALERT method of
response from the alerted
for ordered enqueueing of
handled when the servicingimmediate demand. task-to-task communication demands immediate
task, theGIVE/TAKE method provides a means
requests for services.These requests are
task is free to handle it, rather than upcn
Generally, request and response elements are formattedtables cf
information that reside in the storage of both the requesting task and
the task providing the service. During task-to-task communication,
these elements are passed fromOne task to another, containing either requests for services or responses to requests. When a task requests services of another task via GIVE/TAKE, it builds a GIVE table in its storage. The GIVE request buffer and a GIVE response
buffer. (The request and response buffers may te at the same locaticn
in storagee)
TheGIVE request buffer contains a GIVE request element, which is a
table of information describing the service being requested.Once the GIVE request element is built, the requesting task clears the synch lock
in its address of theGIVE table to zero (in preparation for a call to DMTWAT) and sFecifies the address of the GIVE tatle in a call to DMTGIV. The supervisor then enqueues a supervisor GIVE element containing a
pointer to theGIVE table, so that the request can be forwarded to the
receiving task when that task is ready to accept the request.When the receiving task signals that it can process a GIVE request, the
receiving task builds a TAKE table in its own storage. The TAKE table
consists of a field to receive the task name of the requesting task and
the addresses and the lengths of a TAKE request buffer and aTARE response buffer. Functionally, these buffers complement the GIVE request and response buffers and, like the GIVE buffers, may be at tbe
same location in storage. Introduction 3-25
asynchronous event has taken place. In this case,
not used
response from the alerted
for ordered enqueueing of
handled when the servicing
task, the
requests for services.
task is free to handle it, rather than upcn
Generally, request and response elements are formatted
information that reside in the storage of both the requesting task and
the task providing the service. During task-to-task communication,
these elements are passed from
buffer. (The request and response buffers may te at the same locaticn
in storagee)
The
table of information describing the service being requested.
in its address of the
pointer to the
receiving task when that task is ready to accept the request.
receiving task builds a TAKE table in its own storage. The TAKE table
consists of a field to receive the task name of the requesting task and
the addresses and the lengths of a TAKE request buffer and a
same location in storage.