Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Multi-Thread Host Server for PC Support

IP.com Disclosure Number: IPCOM000059915D
Original Publication Date: 1986-Feb-01
Included in the Prior Art Database: 2005-Mar-08
Document File: 4 page(s) / 34K

Publishing Venue

IBM

Related People

Sharman, RA: AUTHOR

Abstract

A host server which can support many Personal Computers (PCs) making many requests all simultaneously to the host for the same, or different, functions and for synchronizing these requests where necessary, as well as for host requests made to any PC, thus providing a host programming interface allowing any host server or requester function to be implemented, comprises Function Server Managers (FSMs), Function Requester Managers (FRMs) and Terminal Session Managers (TSMs) in the host, assumed for the purposes of this description to be a CICS/VS host. Function Server Managers (FSMs) are provided for the following functions: File services Print services Message services They run as separate tasks which handle all requests in order by implementing a queue of requests which are dequeued in order.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 35% of the total text.

Page 1 of 4

Multi-Thread Host Server for PC Support

A host server which can support many Personal Computers (PCs) making many requests all simultaneously to the host for the same, or different, functions and for synchronizing these requests where necessary, as well as for host requests made to any PC, thus providing a host programming interface allowing any host server or requester function to be implemented, comprises Function Server Managers (FSMs), Function Requester Managers (FRMs) and Terminal Session Managers (TSMs) in the host, assumed for the purposes of this description to be a CICS/VS host. Function Server Managers (FSMs) are provided for the following functions: File services Print services Message services They run as separate tasks which handle all requests in order by implementing a queue of requests which are dequeued in order. When a request is completed, it is sent back to the task which originated the request. When there are no requests on the queue for a given FSM, it is suspended and waits until posted with another request. Then the task is dispatched by CICS. Function Requester Managers (FRMs) are provided for message services and run as separate tasks which generate requests, enqueued to the terminal session representing the PC for which the request is intended. The task then waits until it is posted that there is a reply from the PC to which the request was sent, which may be no more than an acknowledgement. Terminal Session Managers (TSMs) of which there is one for each terminal session are each a separate task that handle all flows for its session, which is necessary because the correct session direction and bracket states must be maintained at all times so that no application request is possible which could corrupt the smooth running of the session. The first process started in the host system establishes an anchor control block structure in shared storage which all subsequent processes use. The whole control block structure is anchored in a CICS TS queue which contains the address of the Main Control Block (MCB). This queue item is set up by the first process activated in the host system. It is also used as a lock during initialization and termination processing. The MCB contains all the information needed to control the running of the separate tasks that make up the host component. It contains the addresses of the requester list, the server list, and the terminal session manager list. All tasks have addressability to the MCB and can use it to send requests to other tasks in the system. Each process is controlled by a Process Control Block (PCB). Each active process has its own PCB. The PCBs are organized into lists by function in order to make scanning for functions easier. Each PCB contains the address of the list of current commands still enqueued for that process to work on. Each command is encoded in a Command Control Block (CCB). A CCB is used to contain the parameters defining a single command. The basic job...