Check out the new USENIX Web site. next up previous
Next: Rebinding and redefinition Up: DITOOLS Previous: Architecture

Loading of new functionality

During the extension stage, as well as at run time, DITOOLS can load arbitrary extension modules (also called backends in our framework) within the process image. These modules can be declared in a configuration file, to keep the executable file isolated from this kind of `volatile' decisions.

We have adopted the shared-library model for these extensions, which means that our extensions are shared libraries themselves. This has two basic advantages. The first one is that we can use the existing development tools. And second, as our extensions are also shared libraries, we can use DITOOLS recursively to extend them.

The support provided by DITOOLS allows modules to be loaded multiple times within the same process (i.e. replicated) without symbol collisions.



Albert Serra, DITools, 2000 USENIX Annual Technical Conference
Tue Apr 25 13:07:07 MET DST 2000