5
logical functionality of the local cell and the logical
operational relationship among cells. These we
represent as the cell instruction set architecture (ISA),
and the protocol of the global message-driven
computing, respectively. The semantic or logical
abstraction of the CCA concept comprises several
classes of functions and relationships including: 1)
data values, structures, and naming, 2) basic atomic
(simple and compound) operations, 3) local and
global flow control, and 4) synchronization and task
management. Due to space considerations, the entire
semantic model as it is understood, although
incompletely, is too large to represent here. Instead,
we touch briefly on the use of message driven
computation and global system synchronization, two
essential parts of the entire model. We note that all
data variables have virtual names and the hardware
mechanisms of the CCA system are able to determine
the physical location of any data object anywhere
within the system. This “magic” is based on the
concept of reference trees and a new strategy of
partially constrained relative data placement, the
details of which are too complicated to include here.
We also assert that processes are first class objects
and as such exist within the application name space
and can be manipulated or managed while running.
This permits the computation to reason about itself
and to control its own execution. This is particularly
valuable when performing problems with exponential
growth and employing heuristics to govern the
suspension of certain tasks in favor of more valuable
tasks.
The basic unit of reaction is a quantum (or
atomic) message (we call it a “burton”) that targets a
particular named variable, data structure, or object (it
can be a control object). The burton identifies the
destination object and specifies the action to be
performed at its site. Therefore, a burton is one of the
two basic types of continuations supported by CCA.
It contains all the information needed to carry out
part of the computation and the logical means to
continue the computation after the action has been
completed. It incorporates references to critical parts
of the name space including the global state, lexically
scoped relatively local state, source of thread
instruction sequences, and some temporary values. A
burton is like a traveling thread. It can carry a short
sequence of operation specifiers like a thread and
state upon which the burton can operate. Upon
incidence at the target site within the continuum
computer and completion of the specified action or
actions, the burton can terminate, continue, or create
one or more new burtons.
Synchronization semantics provide the means of
governing the parallel control of program execution.
The semantics of synchronization are based on in-