posted on 2011-12-19, 13:16authored byBenoit Gaudin, Emil VassevEmil Vassev, Mike Hinchey, Paddy Nixon
This work presents an approach to self-healing that deals with un-handled exceptions within an executing program.
More precisely, we propose an approach based on control theory that automatically disables system functionalities that have led to runtime exceptions. This approach requires the system to be instrumented prior to deployment so that it can later interact with a supervisor. This supervisor en- codes the only sequences of actions (method calls) of the system that are permitted. We describe an implementation that automatically generates instrumentation for Java systems. We introduce an extension of Supervisory Control theory that enables automatic computation of a supervisor/controller model ensuring that an observed trace leading to an un-handled runtime exception cannot occur anymore.
We demonstrate the e cacy of this approach through a comprehensive example.