next up previous contents
Next: Connection Up: Distributed Architecture Description Language Previous: Authorized

Dagent

See Table  12 on page  [*].


 
Table 12: Dagent Block
dagent_definition ::=
  ``dagent''
  dagent_identifier
  ``{''
  connection_block
  obeys_block
  dagent_contract_block
  resource_block
  service_block
  ``}''
  ``;''
   
 

A dagent is similar in concept to the more familiar terminology of agent. However, to avoid confusion in overloading of definitions of the term agents from other fields, agents in DADL will be called dagents. One may think of a dagent as a process on a particular computer. There can be many processes on any one particular computer and each process may be multi-threaded.

The dagent may perform multiple functions and procedures called services. If the dagent is programmed with the traditional object paradigm then the inheritance mechanism can be used to provide polymorphism.

The behavior of a dagent is governed by a collection of actions combined with a set of constraints on when those actions may occur including internal actions. The actions that take place are restricted by the environment.

A dagent uses resources. Some of these resources are consumed and never to be used again while other resources are only temporarily allocated to the dagent and then recycled. The resources are provided by the assumed underlying environment.

A dagent may have state with events that change state. Dagents may have an error state caused by an internal fault. A dagent can be created, killed, and replicated. A dagent, though ready to execute, may be temporarily paused.

An example of a dagent could be a math process providing the simple arithmetic services including plus, minus, multiplication, and division.



 
next up previous contents
Next: Connection Up: Distributed Architecture Description Language Previous: Authorized
Ronald LeRoi Burback
1998-12-16