A named static data repository with
predefined operations. It contains multiple dynamically created and destroyed elements. A
parallel application can consist of any number of passive objects. Once configured, any
parallel application will have a static logical inter-component
configuration. Application components generate/destroy dynamic elements in the static
passive objects. This static inter-component configuration is used for automatic
generation of application customized IPC agents and runtime
configuration/optimization of the passive objects. Depending upon the physical networking
infrastructure, runtime configuration of passive objects can greatly impact the parallel
processing efficiency of the application. Example I:
A tuple space as a passive object. A tuple space (Ref: Linda) is an abstract datatype that
allows three atomic operations: put, get and read.
Example II: A sequential file as a
passive object. A sequential file allows read, write and seek operations.
Example III: A message queue as a passive
object. A message queue allows send and receive operations.
Example IV: A database as a passive
object. A database typically allows SQL or a subset of SQL statements to manipulate its
contents.