Browse Prior Art Database

Data Responsive Modular Interleaved Task Programming System

IP.com Disclosure Number: IPCOM000073741D
Original Publication Date: 1971-Jan-01
Included in the Prior Art Database: 2005-Feb-23
Document File: 3 page(s) / 50K

Publishing Venue

IBM

Related People

Morrison, JP: AUTHOR

Abstract

Reduced programming costs and earlier productivity of new programmers are achieved with a composite data processing program consisting of an assembly of prewritten and custom-written MODULES such as 3-8, communicating by data elements passing through QUEUES such as 11-15, which can each store some number (called its CAPACITY) of data elements. Each module (e.g. 6) is a program which performs a data processing task such as COLLATE, PRINT REPORTS, READ TAPE, and EDIT CARDS on a data element presented to it by SCHEDULER 20 via a queue (e.g. 13). Scheduler 20 activates modules (e.g. 6) on the basis of availability of data elements for processing by the modules, service requests by the modules for data handling, and checks for completion of external events.

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

Page 1 of 3

Data Responsive Modular Interleaved Task Programming System

Reduced programming costs and earlier productivity of new programmers are achieved with a composite data processing program consisting of an assembly of prewritten and custom-written MODULES such as 3-8, communicating by data elements passing through QUEUES such as 11-15, which can each store some number (called its CAPACITY) of data elements. Each module (e.g. 6) is a program which performs a data processing task such as COLLATE, PRINT REPORTS, READ TAPE, and EDIT CARDS on a data element presented to it by SCHEDULER 20 via a queue (e.g. 13). Scheduler 20 activates modules (e.g. 6) on the basis of availability of data elements for processing by the modules, service requests by the modules for data handling, and checks for completion of external events.

Sketch A is a FLOW DIAGRAM representation of a typical program formed by assembling a selection of modules 3-8 into a customized array joined by a network of queues 11-15, which are operated on and activated by scheduler 20. 16-19 represent queues which are LOCAL to particular modules (e.g. 5,6). If the capacity of such a local queue is 1, it is called a SHUNT (e.g. 16).

To execute his program, the programmer codes one statement for each module in the flow diagram, the modules to be custom-written, and constant information in core storage representing selections among options designed into the prewritten modules. These are COMPILED, then LINK-EDITED with the prewritten modules and scheduler 20 to form an executable program. Modules 3, 4, 7, and 8 are connected to external media represented by 1, 2, 9, and 10, respectively, by the above constant information.

In sketch B, Q1 and Q3 are the queues by which modules M1, M2 and MP communicate. Q2 is local to M2. M1 and M2 are examples of prewritten modules and are made available to the programmer in a library 21, which also contains scheduler 20. MP is a typical module custom-written by the programmer. A typical sequence of operation of scheduler 20 might...