Functional Information
The RSCS virtual machine performs certain basic functions as it manages
the transmission of files between the host VM/370 and remote locations.
These functions include: Virtual storage management File management Task-to-task communication RSCS command processing RSCS message handling Interrupticn handling
Virtual Storage Management
The RSCS supervisor controls virtual storage in blocks of either 4096 bytes (page size) or in 16-byte queue elements. Tasks running under the
supervisor obtain their working storage area in page size blocks and
then allocate variable size blocks as their functions require. PAGE ALLOCATION Page allocation is performed by the supervisor service routine, DMTSTC. A storage allocation map, 256 bytes in length, is located in the
supervisor area and is pointed to by MAINMAP in the DMTVEC data area.
Each byte represents a page of virtual storage and contains X'OO' if the
page is free. MAINSIZE, also in DMTVEC, contains the total number of
pages defined for the particular RSCS virtual machine. When a task requires a page of storage, it first searches the storage
allocation maF for a free page (X' 00') The page number is plac,ed in register 1 and a call to DMTSTO reserves the page. replaces the
storage map byte with the one-byte TASKID assigned to the calling task
by the supervisor. To release storage, a task has only to clear the
appropriate bytes in the storage map. QUEUE ELEMENT MANAGEMENT with the exception of a few words of low address storage by the
dispatcher, the rest of the supervisor status information is stored in
chains of 16-byte queue elements managed by DMTQRQ. The first extent of
these queues is in the supervisor and occupies the area between the main
storage allocation map and DMTEXT. A supervisor queue extension area,
one page in length, lS located de X!1COO!. Queue elements are dequeued
from the free element queue pointed to by FREEQ in DMTVEC and enqueued
on one of the active queues (TASKQ, MPXIOQ, SELIOQ, IOEXTQ, EXTe, ALERTQ, or GIVEQ). When the queue element is released, it is returned
to the free element queue.
Part 4. Remote Spooling Communications Subsystem (RSCS) 335
File Management RSCS uses the VM/370 spool file system to interface with VM/370 users.
A user who generates a file intended for transmission to a remote
location must spool the file to the RSCS virtual machine via the CP SPOOL command. In addition
r he must also enter the identification cf
the remote location into the spool file tag area via the CP TAG command.
A remote station submitting a file to RSCS for transmission to
another remote location must meet the same requirements as a VM/370 user. The ID card that precedes the input card file being transmitted
to RSCS must include the userid of the RSCS virtual machine and a tag
field containing the location identifier of the remote station that is
to receive the file.
A remote station submitting a file destined for a VM/370 user need
only specify that user's use rid on the ID card. When the RSCS virtual machine is initially logged on, one of the
first tasks that is started is the Spool File Access task, DMTAXS. Two main functions of DMTAXS are: to provide access to the VM/370 spool file
system, and to manage the queues of tag slots used by RSCS to control
the status and flow of files throughout the system.
TAG SLOT QUEUES The DMTAXS task in RSCS manages a file tag storage area pointed to by
TTAGQ in DMTVEC. This area is made up of a fixed numter of tag slots,
each containing 108 bytes. The total number of slots is determined, at
the time RSCS is generated
r by the value specified in the GENTAGQ macrc.
The number of slots reserved for each link is part of the link
definition stored in the RSCS link table. The contents of each file tag include file attributes from the file's SFELOK and transmissicn
destination and priority from the associated spool file tag.
File tags are chained on one of four types of queues: The active input queue
r
pointed to by TAGACIN in contains
the tags for those files that are currently being processed for
transmissicn to remote locations. The active outfut queue, pointed to by TAGACCUT in contains
the tags for those files that are currently being received from
remote locations. An inactive file queue exists for each
files waiting to be transmitted. Each pointed to by the LPOINTER field in entry.
link that has one or more link's file tag queue is
corresponding link table The free slot queue, pointed to by TAGAFREE in TAGAPEA, is made up af all the slots not currently cn any of the other taJ slot queues.
336 IBM System Programmer's Guide
Previous Page Next Page