System and method for managing control flow of computer programs executing in a computer system
First Claim
1. A method of dynamically processing an event signifying a condition in a computer system, an invocation stack being maintained in said computer system, said invocation stack comprising a plurality of stack frames, the method comprising the steps of:
- (1) selecting a condition event processing manager to process said event based upon an event token representing an event from a routine of the computer system, the event token containing information identifying and otherwise pertaining to the event;
(2) selecting a stack frame from said invocation stack in response to said event, wherein the run-time occurrence of said event is substantially unpredictable;
(3) determining whether a run-time event processing sub-manager associated with said selected condition event processing manager, and including user-defined event processing procedures for said event condition, has been registered with said selected stack frame;
(4) processing said event using said run-time event processing sub-manager if said run-time event processing sub-manager has been so registered;
(5) if a run-time event processing sub-manager for said event condition has not been registered with said selected stack frame, then determining whether a language specific event processing sub-manager associated with said selected condition event processing manager, and including event processing procedures defined by programming procedures for said event condition, has been registered with said selected stack frame; and
(6) processing said event using said language specific event processing sub-manager if said language specific event processing sub-manager has been so registered.
0 Assignments
0 Petitions
Accused Products
Abstract
Processing an event signifying a condition in a computer system is described. The computer system maintains an invocation stack which includes a plurality of stack frames. Such event processing operates by selecting a stack frame from the invocation stack, and then determining whether a user specified event processing procedure capable of processing the event has been registered with the selected stack frame. If a user specified event processing procedure has been so registered, then the event is processed using the user specified event processing procedure as specified by a set of rules and options defined for the disposition and/or processing of the specific event. Optionally, it is then determined whether a language specific event processing procedure capable of processing the event has been registered with the selected stack frame. If a language specific event processing procedure has been so registered, then the event is processed using the language specific event processing procedure as specified by a set of rules and options defined for the disposition and/or processing of the specific event. If an user specified event processing procedure capable of processing the event or a language specific event processing procedure capable of processing the event has not been registered with any stack frame of the invocation stack or have chosen not to terminate the event processing, then the event is processed using an applicable default event processing procedure.
-
Citations
25 Claims
-
1. A method of dynamically processing an event signifying a condition in a computer system, an invocation stack being maintained in said computer system, said invocation stack comprising a plurality of stack frames, the method comprising the steps of:
-
(1) selecting a condition event processing manager to process said event based upon an event token representing an event from a routine of the computer system, the event token containing information identifying and otherwise pertaining to the event; (2) selecting a stack frame from said invocation stack in response to said event, wherein the run-time occurrence of said event is substantially unpredictable; (3) determining whether a run-time event processing sub-manager associated with said selected condition event processing manager, and including user-defined event processing procedures for said event condition, has been registered with said selected stack frame; (4) processing said event using said run-time event processing sub-manager if said run-time event processing sub-manager has been so registered; (5) if a run-time event processing sub-manager for said event condition has not been registered with said selected stack frame, then determining whether a language specific event processing sub-manager associated with said selected condition event processing manager, and including event processing procedures defined by programming procedures for said event condition, has been registered with said selected stack frame; and (6) processing said event using said language specific event processing sub-manager if said language specific event processing sub-manager has been so registered. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An event manager for dynamically processing an event signifying a condition in a computer system, an invocation stack being maintained in said computer system, said invocation stack comprising a plurality of stack frames, an execution entity executing in said computer system, said execution entity comprising a plurality of computer language and programming paradigm diverse routines, said invocation stack being used by said execution entity during execution of said execution entity in said computer system, said event manager comprising:
-
a plurality of condition event processing managers each for processing events of a particular event type, wherein the run-time occurrence of each of said events is substantially unpredictable; and a controlling event manager comprising; means for receiving an event token representing an event from one of the routines of said execution entity, said event token being intelligible to all routines of said execution entity, said event token containing information identifying and otherwise pertaining to said event, means for referring to said information contained in said event token to identify an event type of said event, means for selecting one of said event processing managers in accordance with said identified event type as represented by a received event token, and means for enabling said selected event processing manager to process said event; wherein said selected condition event processing manager comprises; a plurality of event processing sub-managers, each said event processing sub-manager specifying procedures for processing said events of a particular event type, said sub-managers including a language specific event processing sub-manager comprising event processing procedures defined by programming procedures and a run-time event processing sub-manager comprising user-defined event processing procedures, means for selecting a stack frame from said invocation stack, means for determining whether said run-time event processing sub-manager for said event condition has been registered with said selected stack frame, and means for processing said event using said run-time event processing sub-manager if said run-time event processing sub-manager has been so registered, means for determining whether said language specific event processing sub-manager for said event condition has been registered with said selected stack frame if a run-time event processing sub-manager for said event condition has not been registered with said selected stack frame, and means for processing said event using said language specific event processing sub-manager if said language specific event processing sub-manager has been so registered. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. An event manager, comprising:
-
a controlling event manager for receiving tokens representative of events and for controlling dispatching of the tokens for processing, wherein each event token contains information identifying and otherwise pertaining to an event; a registration event manager for registering event processing activities; and a plurality of selectable condition event processing managers, each said event processing manager processing a distinct type of event; wherein at least one of said selectable condition event processing managers comprises a plurality of event processing sub-managers, each said sub-manager comprising procedures for processing said distinct type of event; wherein a particular selectable condition event processing manager is selected for processing an event based upon a token associated with the event. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A program storage device readable by a computer system, tangibly embodying a program of instructions executable by said computer system to perform method steps for enabling said computer system to process an event signifying a condition in said computer system, an invocation stack being maintained in said computer system, said invocation stack comprising a plurality of stack frames, said method steps comprising:
-
(1) selecting a condition event processing manager to process said event based upon an event token representing an event from a routine of said computer system, the event token containing information identifying and otherwise pertaining to the event; (2) selecting a stack frame from said invocation stack in response to said event, wherein the run-time occurrence of said event is substantially unpredictable; (3) determining whether a run-time event processing sub-manager associated with said selected condition event processing manager, and including user-defined event processing procedures for said event condition, has been registered with said selected stack frame; (4) processing said event using said run-time event processing sub-manager if said run-time event processing sub-manager has been so registered; (5) if a run-time event processing sub-manager for said event condition has not been registered with said selected stack frame, then determining whether a language specific event processing sub-manager associated with said selected condition event processing manager, and including event processing procedures, defined by programming procedures, for said event condition, has been registered with said selected stack frame; and (6) processing said event using said language specific event processing sub-manager if said language specific event processing sub-manager has been so registered. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A computer program product for use with an invocation stack, the invocation stack comprising a plurality of stack frames, said computer program product comprising:
a computer usable medium having a computer readable program code means embodied in said medium for enabling a computer to process an event signifying a condition in said computer, said computer readable program code means comprising; computer readable first program code means for enabling said computer to select a condition event processing manager to process said event based upon an event token representing an event from a routine of said computer, the event token containing information identifying and otherwise pertaining to the event; computer readable second program code means for enabling said computer to select a stack frame from said invocation stack in response to said event wherein the run-time occurrence of said event is substantially unpredictable; computer readable third program code means for enabling said computer to determine whether a run-time event processing sub-manager associated with said selected condition event processing manager, and including user-defined event processing procedures for said event condition, has been registered with said selected stack frame; computer readable fourth program code means for enabling said computer to process said event using said run-time event processing sub-manager if said run-time event processing procedure has been so registered; computer readable fifth program code means for enabling said computer to determine whether a language specific event processing sub-manager associated with said selected condition event processing manager, and including event processing procedures, defined by programming procedures, for said event condition, has been registered with said selected stack frame when a run-time event processing sub-manager for said event condition has not been registered with said selected stack frame; and computer readable sixth program code means for enabling said computer to process said event using said language specific event processing sub-manager if said language specific event processing sub-manager has been so registered. - View Dependent Claims (23, 24, 25)
Specification