摘要 |
The present invention obviates the need for software support in switching control of a computer between programs by providing a hardware function on the control unit together with appropriate control lines to respond to detection of the need for a program switch, the function including transfer initiation means (604) which interacts with a function control means (608) of a function control array (612) to identify an entry point in the invoked program (610) and conditionally continuing the transfer mechanism. The function control means addresses call return elements (CRE's) when it is in an execute mode but transfers processor control back to the invoking program when it is in a by-pass mode. CRE's that are in an available, data-receivable state are chained on an available call return queue (ACQ) and may be removed therefrom and placed on a task dispatching element (TDE) on an asneeded basis through a receive message mechanism. Active CRE's contain a status save means (614) for storing the state of the invoking program during execution of the invoked program. In the event there are no active CRE's available for such storage, a task switch occurs, and the current TDE, i.e., the invoking program, is inserted on a wait list of the ACQ where it remains until a CRE becomes available. When the CRE becomes available, the invoking program TDE is removed from the ACQ wait list and inserted in priority sequence on the task dispatching queue (TDQ). Once a CRE is made available to the TDE, the transfer initiation means is restarted. At the termination of the execution of the invoked program, a transfer return means (616) transfers processor control back to the invoking program and inserts the CRE onto the ACQ. The invoking program (600) then commences execution at the next sequential instruction. |
申请人 |
INTERNATIONAL BUSINESS MACHINES CORPORATION |
发明人 |
MCCULLOUGH, WARREN J.;POLAND, TERRELL A.;REYNOLDS, DALE N.;SLACK, KEITH K.;TURNER, RICHARD T. |