 |
Rice University
Department of Computer Science
presents
Algis Rudys
Master of Science Thesis Defense
Termination and Rollback in Language-Based Systems
Abstract
Language run-time systems are routinely used to host potentially buggy
or malicious codelets --- software modules, agents, applets, etc. --- in
a secure environment. A number of techniques exist for managing access
control to system services, but most language run-time systems have
little or no support for managing system resources. For this thesis, we
took a single aspect of the resource-management problem, that of code
termination, and addressed it. We seek to solve not just the direct
problem of how to terminate code, but also the related issue of
restarting previously terminated code. Since portability is
particularly important in language-based systems, where a single program
is expected to run unmodified on different implementations of the
run-time system, we base our designs on code-to-code transformations.
Our goal is to provide a mechanism based on code-to-code transformations
with semantics similar to those provided by operation systems for
managing codelets in a run-time system.
We wish to use two analysis techniques in developing these mechanisms.
First, we desire a formal analysis and discussion of our mechanisms. We
prove our termination system correct for an idealized language, and we
discuss the ACID semantics of our transactional rollback system.
Second, we implemented our systems in Java using bytecode rewriting to
perform performance analyses. The results ranged from relatively modest
(3 to 25% overhead for soft termination), to very heavy, although
perhaps unavoidable (6 to 23X overhead for transactional rollback).
Finally, we examined the technique of bytecode rewriting, and discuss
some lessons we have learned that may apply to other systems developed
with bytecode rewriting.
Tuesday, October 22, 2002 at 3pm in Duncan Hall 3076
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- |
|
| |