Claims Analysis
Total Claims: 22
Claim 1
Independent Claim
153 words
A dynamic translation system comprising: a translator, the translator translating input code into output code and outputting the output code from the translator; a memory device in communication with the translator, the memory device receiving the output code from the translator and storing the output code in the memory device; a system controller, the system controller determining when an exception has occurred; and an interpreter in communication with the translator and with the system controller, wherein when the system controller determines that an exception has occurred, the system controller transfers control to the interpreter and the interpreter begins executing the output code, the interpreter determining when a point is reached in the output code at which application state is recoverable an d providing an indication that said point has been reached to the system controller, the system controller transferring control to an exception handler when said indication is received by the system controller.
Claim 2
Dependent Claim
153 words
A dynamic translation system comprising: a translator, the translator translating input code into output code and outputting the output code from the translator; a memory device in communication with the translator, the memory device receiving the output code from the translator and storing the output code in the memory device; a system controller, the system controller determining when an exception has occurred; and an interpreter in communication with the translator and with the system controller, wherein when the system controller determines that an exception has occurred, the system controller transfers control to the interpreter and the interpreter begins executing the output code, the interpreter determining when a point is reached in the output code at which application state is recoverable an d providing an indication that said point has been reached to the system controller, the system controller transferring control to an exception handler when said indication is received by the system controller.
Claim 3
Dependent Claim
58 words
The dynamic translation system of claim 1 , wherein the interpreter executes the input code and provides profile information to the translator, the profile information identifying instructions of the input code to be executed a plurality of times, wherein the translator only stores the instructions of the input code identified in the profile information in the memory device.
Claim 4
Dependent Claim
40 words
The dynamic translation system of claim 2 , wherein the dynamic translation system is comprised in a computer system, the computer system comprising hardware running an operating system, the operating system notifying the system controller when an exception has occurred.
Claim 5
Dependent Claim
21 words
The dynamic translation system of claim 3 , wherein the exception corresponds to an asynchronous exception intended for the input code.
Claim 6
Dependent Claim
17 words
The dynamic translation system of claim 4 , wherein the memory device is a cache memory device.
Claim 7
Dependent Claim
20 words
The dynamic translation system of claim 5 , wherein the interpreter is a software program being executed by the hardware.
Claim 8
Dependent Claim
65 words
The dynamic translation system of claim 6 , wherein the hardware obtains the output code from the cache memory device and executes the output code and wherein when the system controller is notified by the operating system that an asynchronous exception has occurred, the system controller causes the execution of the output code in the hardware to be halted and transfers control to the interpreter.
Claim 9
Dependent Claim
151 words
A dynamic translation system comprising: means for translating input code into output code and for outputting the output code from the means for translating; means for storing output code output from the translating means; means for controlling the operation of the dynamic translation system, the controlling means comprising means for determining when an exception has occurred; and means for executing the output code and for determining when a point is reached in the output code at which application state is recoverable, the executing means receiving a notification from the controlling means that an exception has occurred, wherein when the executing means receives the notification, the executing means begins executing the output code, wherein when the executing means determines that said point has been reached, the executing means provides an indication to the controlling means, wherein when the controlling means receives said indication, the controlling means transfers control to an exception handler.
Claim 10
Dependent Claim
151 words
A dynamic translation system comprising: means for translating input code into output code and for outputting the output code from the means for translating; means for storing output code output from the translating means; means for controlling the operation of the dynamic translation system, the controlling means comprising means for determining when an exception has occurred; and means for executing the output code and for determining when a point is reached in the output code at which application state is recoverable, the executing means receiving a notification from the controlling means that an exception has occurred, wherein when the executing means receives the notification, the executing means begins executing the output code, wherein when the executing means determines that said point has been reached, the executing means provides an indication to the controlling means, wherein when the controlling means receives said indication, the controlling means transfers control to an exception handler.
Claim 11
Dependent Claim
73 words
The dynamic translation system of claim 8 , wherein the executing means comprises means for interpreting the input code and for providing profile information to the translating means, the profile information identifying instructions of the input code to be executed a plurality of times by hardware in communication with the controlling means, wherein the translating means stores the instructions of the input code identified in the profile information in the means for storing.
Claim 12
Dependent Claim
43 words
The dynamic translation system of claim 9 , wherein the dynamic translation system is comprised in a computer system, the computer system comprising said hardware, said hardware running an operating system, the operating system notifying the controlling means when an exception has occurred.
Claim 13
Dependent Claim
21 words
The dynamic translation system of claim 10 , wherein the exception corresponds to an asynchronous exception intended for the input code.
Claim 14
Dependent Claim
31 words
The dynamic translation system of claim 11 , wherein the executing means is an interpreter, the interpreter being implemented as a software program, the software program being executed by the hardware.
Claim 15
Dependent Claim
102 words
The dynamic translation system of claim 12 , wherein the hardware obtains the output code from the means for storing and executes the output code and wherein when the controlling means is notified by the operating system that an asynchronous exception has occurred, the controlling means causes the execution of the output code in the hardware to be halted and transfers control to the interpreter, wherein when control is transferred to the interpreter, the interpreter begins executing the output code and checking at the end of each block of instructions of the output code to determine whether said point has been reached.
Claim 16
Independent Claim
97 words
A method for dynamically translating input code into output code, the method comprising the steps of: translating input code into output code; storing the output code in a memory element; detecting when an exception has occurred; when the occurrence of an exception is detected, executing the translated input code one instruction at a time; during the execution of the translated input code, determining when a point is reached in the translated input code at which application state is recoverable; and when an exception has occurred and said point has been reached, transferring control to an exception handler.
Claim 17
Independent Claim
97 words
A method for dynamically translating input code into output code, the method comprising the steps of: translating input code into output code; storing the output code in a memory element; detecting when an exception has occurred; when the occurrence of an exception is detected, executing the translated input code one instruction at a time; during the execution of the translated input code, determining when a point is reached in the translated input code at which application state is recoverable; and when an exception has occurred and said point has been reached, transferring control to an exception handler.
Claim 18
Dependent Claim
25 words
The method of claim 14 , wherein only output code identified in profile information as corresponding to hot code is stored in the memory element.
Claim 19
Dependent Claim
30 words
The method of claim 15 , wherein an operating system of a computer system detects when an exception has occurred and notifies a system controller that an exception has occurred.
Claim 20
Dependent Claim
36 words
The method of claim 16 , wherein the exception corresponds to an asynchronous exception intended for the input code and wherein an interpreter executes the translated input code and determines when said point has been reached.
Claim 21
Dependent Claim
19 words
The method of claim 17 , wherein the interpreter notifies the system controller when said point has been reached.
Claim 22
Dependent Claim
35 words
The method of claim 18 , wherein when the system controller is notified that an asynchronous exception has occurred and that said point has been reached, the system controller transfers control to said exception handler.