Overview



Lilith1 is a general purpose framework which provides a highly scalable, easy distribution of user code across a distributed, heterogeneous computing platform. The Lilith framework encompasses a number of code objects that handle the details of instantiating and running the user code on nodes of the platform and of enabling communications between nodes. The user code can take advantage of these services provided by Lilith by interacting with Lilith's objects in a well-defined way.

Lilith is an ideal basis for the creation of tools for the use and administration of very large (thousands of nodes) clusters. Tools are written by the creation of suitable user code; the user code provides the tool functionality on a single node and Lilith handles the details of propagation and distribution and ensures scalability. Although there exist tools to accomplish some standard tasks on distributed clusters, they are not scalable or rely on relatively weak security. Furthermore, since Lilith frees the user of many details, Lilith-based tools can be rapidly developed.

Lilith is written in Java , taking advantage of Java's unique features of loading and distributing code dynamically, providing platform independence and support for threads, and allowing easy creation of graphical user interfaces with browser front ends. Java is Object-oriented, further facilitating rapid Lilith-based tool development through object reuse.

NOTE: This project is no longer under development as the authors have moved on to other projects.<\b>


1. Lilith is the mythological Mother of D(a)emons.