Automated Exception Handling
   HOME

TheInfoList



OR:

Automated exception handling is a
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, e ...
term referring to the computerized handling of errors.
Runtime system In computer programming, a runtime system or runtime environment is a sub-system that exists both in the computer where a program is created, as well as in the computers where the program is intended to be run. The name comes from the compile t ...
s (engines) such as those for the
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
programming language or
.NET Framework The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
lend themselves to an automated mode of exception or error handling. In these environments software errors do not ''crash'' the
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
or runtime engine, but rather generate exceptions. Recent advances in these runtime engines enables specialized runtime engine add-on products to provide automated
exception handling In computing and computer programming, exception handling is the process of responding to the occurrence of ''exceptions'' – anomalous or exceptional conditions requiring special processing – during the execution of a program. In general, an ...
that is independent of the source code and provides root-cause information for every exception of interest.


How it works

Upon exception, the runtime engine calls an error interception tool that is attached to the runtime engine (e.g.,
Java virtual machine A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally describes ...
(JVM)). Based on the nature of the exception such as its type and the class and method in which it occurred and based on user preferences, an exception can be either handled or ignored. If the preference is to handle the exception, then based on handling preferences such as memory search depth, the error interception utility extracts memory values from heap and stack memories. This snapshot then produces the equivalent of a
debugger A debugger or debugging tool is a computer program used to software testing, test and debugging, debug other programs (the "target" program). The main use of a debugger is to run the target program under controlled conditions that permit the pr ...
screen (as if there had been a debugger) at the moment of the exception.


Advantages

This mechanism enables the automated handling of software errors independent of the application source code and of its developers. It is a direct artifact of the runtime engine paradigm and it enables unique advantages to the software lifecycle that were unavailable before.


References

Java (programming language) {{Comp-sci-stub