Virtual Machine and Programming Language for Event Processing
First Claim
1. A method for executing a virtual machine, comprising:
- executing instructions from a program using the virtual machine on a computer, wherein the instructions comprise at least one of;
an event instruction for receiving an inbound event;
an assignment instruction for assigning a value;
a branch instruction for conditional transfer to a different one of the instructions;
an emit instruction for specifying that an outbound event is to be emitted;
a terminate instruction for specifying that a current execution context object is to be terminated; and
a fan-out instruction for at least one of specifying event correlation and enabling a context switch.
1 Assignment
0 Petitions
Accused Products
Abstract
A virtual machine supports execution of compiler-generated code and provides an execution environment for code that may correspond to any of several different event-driven or message-driven programming models (such as state machines, rules for complex event processing and event correlation, monitoring contexts, processes, and mediations). The programming models may be used in business monitoring and/or business integration environments. A programming language is defined for execution using the virtual machine, which contains a relatively small number of instructions and which is preferably generated by a compiler from a higher-level, event-driven or message-driven model.
134 Citations
31 Claims
-
1. A method for executing a virtual machine, comprising:
executing instructions from a program using the virtual machine on a computer, wherein the instructions comprise at least one of;
an event instruction for receiving an inbound event;
an assignment instruction for assigning a value;
a branch instruction for conditional transfer to a different one of the instructions;
an emit instruction for specifying that an outbound event is to be emitted;
a terminate instruction for specifying that a current execution context object is to be terminated; and
a fan-out instruction for at least one of specifying event correlation and enabling a context switch.- View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
13. A virtual machine for executing a program, comprising:
an instruction executor for executing instructions from the program using a computer, wherein the instructions comprise at least one of;
an event instruction for receiving an inbound event;
an assignment instruction for assigning a value;
a branch instruction for conditional transfer to a different one of the instructions;
an emit instruction for specifying that an outbound event is to be emitted;
a terminate instruction for specifying that a current execution context object is to be terminated; and
a fan-out instruction for at least one of specifying event correlation and enabling a context switch.- View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
25. A computer program product for executing a virtual machine, wherein the computer program product is embodied on one or more computer-readable media and comprises computer-readable instructions for:
executing instructions from a program using the virtual machine on a computer, wherein the instructions comprise at least one of;
an event instruction for receiving an inbound event;
an assignment instruction for assigning a value;
a branch instruction for conditional transfer to a different one of the instructions;
an emit instruction for specifying that an outbound event is to be emitted;
a terminate instruction for specifying that a current execution context object is to be terminated; and
a fan-out instruction for at least one of specifying event correlation and enabling a context switch.
-
26. A computer-readable medium storing source code written in a programming language, wherein:
-
the programming language comprises; an event instruction for receiving an inbound event; an assignment instruction for assigning a value; a branch instruction for conditional transfer to a different one of the instructions; an emit instruction for specifying that an outbound event is to be emitted; a terminate instruction for specifying that a current execution context object is to be terminated; and a fan-out instruction for at least one of specifying event correlation and enabling a context switch; and the source code comprises a plurality of the instructions in the programming language. - View Dependent Claims (27, 28)
-
-
29. A program of instructions storable on a computer-readable medium for causing a computer to execute, wherein the instructions comprise a plurality of:
-
an event instruction for receiving an inbound event; an assignment instruction for assigning a value; a branch instruction for conditional transfer to a different one of the instructions; an emit instruction for specifying that an outbound event is to be emitted; a terminate instruction for specifying that a current execution context object is to be terminated; and a fan-out instruction for at least one of specifying event correlation and enabling a context switch. - View Dependent Claims (30, 31)
-
Specification