among diverse nodes connected to a host in a heteroge
COMMUNICATIONS ARRANGEMENT FOR neous distributed digital data processing system.
DIGITAL DATA PROCESSING SYSTEM In brief summary, the communications mechanism
EMPLOYING HETEROGENEOUS MULTIPLE includes a common queue buffer which is used" to con
PROCESSING NODES 5 tain message queues for all of the nodes in the system.
To perform an information transfer, a node inserts a
This is a continuation of copending application Ser. message into an entry into the queue of the receiving
No. 07/093,474 filed on Sept. 4, 1987, now abandoned. node. If the message indicates a transfer of data, it also
„. „„„ „m ^r„, „„r^r^^T identifies the location of a buffer containing the data.
BACKGROUND OF THE INVENTION 10 Upon retrieving the queue entry from its 8queuC) the
1. Field of the Invention receiving node may retrieve the contents of the buffer. The invention relates generally to the field of digital The queue buffer is identified by a common descriptor
data processing systems and more specifically to com- block which is accessible by all of the nodes in the
munications mechanisms for facilitating communica- system.
tions among nodes in a system employing multiple 15 DESCRIPTION OF THE DRAWINGS nodes.
2. Description of the Prior Art This invention is pointed out with particularity in the In the past, digital data processing systems, or com- appended claims. The above and further advantages of
puters, were large and expensive systems including one this invention may be better understood by referring to
or only a few central processor units connected to a 20 the following description taken in conjunction with the
main memory, mass storage such as disk and tape units, accompanying drawings, in which:
and input/output units such as printers, video display FIG- 1 is a general block diagram of a digital data
terminals, and telecommunication links. Because of the processing system incorporating a communications
cost of such systems, they typically supported a number mechanism in accordance with the invention;
of users, and a significant amount of design effort went 25 FIGS- 2A through 2C are data structures used in
into making them faster. However, as more parts of the connection with the communications mechanism;
computers were put onto integrated circuit chips, in- FIGS. 3A-3E depict details of control and status
eluding entire central processor units, the cost of com- registers used in connection with the communications
puters declined dramatically, and so it became cost , mechanism; and
effective in many applications to devote a single com- FIGS. 4A-1, 4A-2, 4B-1, 4B-2 depict flow diagrams
puter to one or only a few users. detailing the operations of the new communications
A benefit of having all users using a single large com- mechanism,
puter system is that data and programs may be shared DETAILED DESCRIPTION OF AN
among a number of users. This benefit can also be real- 3J ILLUSTRATIVE EMBODIMENT ized in an environment of smaller computers if they are
linked together, for example, to form a distributed sys- l- General Description tem. In a distributed system, the system is controlled by FIG. 1 depicts a general block diagram of a digital a host computer which provides services to the smaller data processing system incorporating a communications computers, which are termed "nodes", such as data and 40 mechanism in accordance with the invention. With program sharing, scheduling of resources such as print- reference to FIG. 1, the digital data processing system ers, backup storage, and the like. includes a host 10 and a plurality of nodes 11(0) through A problem arises, however, in facilitating communi- 11(N) (generally identified by reference numeral 11) cations among nodes, that is, in allowing nodes to initi- interconnected by a bus 12. As is conventional, the host ate transfers of information, comprising data and pro- 45 includes a host processor (not shown) with an associgrams, to and from other nodes. In the past, information ated host memory 13 which serve to initialize and protransfers were asymmetric, that is, the host generated vide services to the nodes 11. The nodes 11 may also commands, which were performed by the nodes, and include processors, intelligent mass data storage subsysthe nodes generated responses. In such systems, the host tems, network adapters and the like. At least some of maintained a set of queues for each node, each queue 50 the nodes may have an associated node memory 14(0) including a command queue, a response queue and a through 14(N) (generally identified by reference numessage queue. The host loaded commands into the meral 14). Each node 11 also has a set of communicacommand queue and the node processed each command tions control and status registers 15(0) through 15(N) and inserted a response into the response queue. If the (generally identified by reference numeral 15). The node required service from the host, but not in response 55 contents of each set of control and status registers 15 are to a command, it loaded a message into the message described below in connection with FIG. 3. queue. The host received the message and provided the As is conventional, the host memory 13 may be acrequired service. The information was actually trans- cessed by a host processor (not shown), and it may also ferred in buffers which were unique to each node and be accessed by the nodes 11 by read or write informanot accessible to the other nodes. If a node required an 60 tion transfers over bus 12. That is, words of information information transfer with another node, the initiating may be written to, or read from, the host memory 13 by node essentially had to request the host to perform the the host processor, and words of information may also transfer, which pre-empted the host from performing be written to or read from the host memory 13 by theother operations. nodes 11. (A word is the number of bits of information,
STTMMAPV OF THF TWVFNTTnN 65 ^P^Y sixteen' thirty tw0 or sixty four bits' which
SUMMARY OF THE INVENTION may ^ transferred over the bus 12 at one time} In
The invention provides a new and improved commu- addition, in one specific embodiment, at least some of nications mechanism for facilitating communications the node memories 14 can be accessed, by means of