Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Methods For Self-Organizing Software

Patent ·
OSTI ID:880058

A method for dynamically self-assembling and executing software is provided, containing machines that self-assemble execution sequences and data structures. In addition to ordered functions calls (found commonly in other software methods), mutual selective bonding between bonding sites of machines actuates one or more of the bonding machines. Two or more machines can be virtually isolated by a construct, called an encapsulant, containing a population of machines and potentially other encapsulants that can only bond with each other. A hierarchical software structure can be created using nested encapsulants. Multi-threading is implemented by populations of machines in different encapsulants that are interacting concurrently. Machines and encapsulants can move in and out of other encapsulants, thereby changing the functionality. Bonding between machines' sites can be deterministic or stochastic with bonding triggering a sequence of actions that can be implemented by each machine. A self-assembled execution sequence occurs as a sequence of stochastic binding between machines followed by their deterministic actuation. It is the sequence of bonding of machines that determines the execution sequence, so that the sequence of instructions need not be contiguous in memory.

Research Organization:
Sandia Corporation
DOE Contract Number:
AC04-94AL85000
Assignee:
Sandia Corporation (Albuquerque, NM)
Patent Number(s):
US 6957415
Application Number:
10/456382
OSTI ID:
880058
Country of Publication:
United States
Language:
English

References (2)

Language concepts using dynamic and distributed objects conference January 1991
The design and implementation of hierarchical software systems with reusable components journal October 1992

Similar Records

Self-assembled software and method of overriding software execution
Patent · Mon Jan 07 23:00:00 EST 2013 · OSTI ID:1082907

Dynamic self-assembly of hierarchical software structures/systems.
Conference · Tue Dec 31 23:00:00 EST 2002 · OSTI ID:915178

Fencing data transfers in a parallel active messaging interface of a parallel computer
Patent · Tue Aug 11 00:00:00 EDT 2015 · OSTI ID:1209344

Related Subjects