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

Interrupt Driven Queueing for Communication Between Two Processors

IP.com Disclosure Number: IPCOM000061248D
Original Publication Date: 1986-Jul-01
Included in the Prior Art Database: 2005-Mar-09
Document File: 3 page(s) / 48K

Publishing Venue

IBM

Related People

Graham, CS: AUTHOR [+2]

Abstract

A method is provided for interrupt driven queueing for communication between two processors. One processor is a control store processor (CSP) and the other is a personal computer (PC). The PC provides the CSP with support of emulated workstations and communications. The CSP sends I/O requests to these PC I/O devices. The CSP issues an I/O request by placing the request on a queue in shared memory. The PC pulls requests off the request queue, processes them, and posts the corresponding request completions on another queue in shared memory. This method does not stop the CSP while an I/O request is being processed. Further, multiple I/O requests can be processed at one time allowing both the PC and the CSP to be more efficient.

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 52% of the total text.

Page 1 of 3

Interrupt Driven Queueing for Communication Between Two Processors

A method is provided for interrupt driven queueing for communication between two processors. One processor is a control store processor (CSP) and the other is a personal computer (PC). The PC provides the CSP with support of emulated workstations and communications. The CSP sends I/O requests to these PC I/O devices. The CSP issues an I/O request by placing the request on a queue in shared memory. The PC pulls requests off the request queue, processes them, and posts the corresponding request completions on another queue in shared memory. This method does not stop the CSP while an I/O request is being processed. Further, multiple I/O requests can be processed at one time allowing both the PC and the CSP to be more efficient. This method of processing I/O work requests has two distinct parts: the CSP queueing requests to the PC and the PC queueing completions to the CSP. When the CSP requires work to be done by the PC, information defining the work request is placed on a queue in shared memory. The information includes an identifier to specify the PC task (manager) to process the request and data pointers to the work areas associated with the I/O request. The queue is placed within a protected region of shared memory so that both processors can manipulate items on the queue. After placing an element on the request queue with the work request information, the CSP notifies the PC that a request is on the queue by generating an interrupt level seven (IL7) on the PC. The CSP causes a PC interrupt by issuing a channel command to a special device address on the CSP. Forcing the PC interrupt in this manner does not stop the CSP. The PC interrupt seven handler acts as a router for work requests. When the IL7 handler gains control, it checks if any new elements are on the queue. If an unprocessed request is on the queue, the element is pulled off and requeued on the specific applications task queue. The interrupt handler processes the next element on the queue. This process continues until the queue is empty. After pulling all new elements from the queue, the interrupt handler exits, calling the PC dispatcher. An example of the process implemented is shown in the drawing. An I/O request is issued by the CSP. The CSP places the I/O request on the request queue in the shared me...