Work is underway to integrate these techniques developed in the context of individual applications into an application-independent virtualization and process migration layer. The active files abstraction provides legacy applications with a programmable proxy-based interface to distributed services by virtualizing the standard file system interface. Implementations of the abstraction can realize the proxy functionality as either a DLL injected into the application, a separate thread running within the same process, or a separate process altogether. Implementation of this substrate and development of sample applications is in progress. We have built prototypes that implement critical features of each component and have tested them using generic applications.
Work is underway to develop the complete virtualization substrate.
Designed, implemented, and evaluated a general CC application-aware adaptation architecture for tunable distributed applications . The architecture has been extensively evaluated using an active visualization and parallel image processing applications. This environment leverages API interception techniques to divert an application resource request to code that performs appropriate rate and capacity control. The environment is used in the CC adaptation architecture to generate the performance database, and has independent merit as a sandboxing environment that imposes constraints on resource utilization. This technique has independent merit for augmenting binary applications with externally-specified alternate execution paths and additional modules.