IP Library Patent Application 12055550
Patent Application
App. No. 12/055,550

Method And Systems For Invoking An Advice Operation Associated With A Joinpoint

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
12/055,550
Abstract

Methods and systems are described for invoking an advice operation associated with a joinpoint. In one embodiment, the method includes identifying, based on a pointcut specification included in an aspect specification, a joinpoint in a machine code program component. The joinpoint includes a machine code instruction. The method further includes identifying, based on an advice specification included in the aspect specification, an advice operation included in a machine code program component. The method still further includes detecting an access to the machine code instruction in the joinpoint for execution by a processor. The method also includes invoking the advice operation in association with detecting the access to the machine code instruction.

Claims (37)

1 . A method for invoking an advice operation associated with a joinpoint, the method comprising:

identifying, based on a pointcut specification included in an aspect specification, a joinpoint in a machine code program component, the joinpoint including a machine code instruction;

identifying, based on an advice specification included in the aspect specification, an advice operation included in a machine code program component;

detecting an access to the machine code instruction in the joinpoint for execution by a processor; and

invoking the advice operation in association with detecting the access to the machine code instruction.

2 . The method of claim 1 wherein the pointcut specification conforms to a schema for specifying a pointcut specification for determining a joinpoint included in a machine code program component generated from source code written in any of a plurality of programming languages.

3 . The method of claim 1 wherein the aspect specification is specified in a first programming language and the machine code program component is generated from source code in a second programming language.

4 . The method of claim 1 wherein the machine code program component including the joinpoint is generated in a first machine code language for execution on a first processor and a machine code program component including the advice operation is generated in a second machine code language for execution on a second processor.

5 . The method of claim 1 wherein the aspect specification includes a matching criterion for identifying a joinpoint, the matching criterion based on at least one of an attribute of an addressable entity, an attribute of a relationship between a plurality of addressable entities, and an execution environment attribute.

6 . The method of claim 1 wherein the joinpoint is identified in a first instance of an addressable entity and wherein the joinpoint is not identified in a second instance of the addressable entity.

7 . The method of claim 1 further comprising associating aspect information with a processor memory location including the machine code instruction based on the aspect specification.

8 . The method of claim 7 wherein the processor memory location is identified by a processor virtual memory address included in at least one of a structured processor memory address space, a non-sequential processor memory address space, and a sequential processor memory address space.

9 . The method of claim 1 wherein claim 7 wherein a portion of the processor memory including the processor memory location is marked for detecting the access.

10 . The method of claim 1 wherein the advice specification conforms to a schema for advice specifications for identifying an advice operation included in a machine code program component generated from source code written in any of a plurality of programming languages.

11 . A system for invoking an advice operation associated with a joinpoint, the system comprising:

means for identifying, based on a pointcut specification included in an aspect specification, a joinpoint in a machine code program component, the joinpoint including a machine code instruction;

means for identifying, based on an advice specification included in the aspect specification, an advice operation included in a machine code program component;

means for detecting an access to the machine code instruction in the joinpoint for execution by a processor; and

means for invoking the advice operation in association with detecting the access to the machine code instruction.

12 . A system for invoking an advice operation associated with a joinpoint, the system comprising:

an aspect binder component configured for identifying, based on a pointcut specification included in an aspect specification, a joinpoint in a machine code program component, the joinpoint including a machine code instruction;

the aspect binder component configured for identifying, based on an advice specification included in the aspect specification, an advice operation included in a machine code program component;

an access detector component configured for detecting an access to the machine code instruction in the joinpoint for execution by a processor, and configured for invoking the advice operation in association with detecting the access to the machine code instruction.

13 . The system of claim 12 wherein the pointcut specification conforms to a schema for specifying a pointcut specification for determining a joinpoint included in a machine code program component generated from source code written in any of a plurality of programming languages.

14 . The system of claim 12 wherein the aspect specification is specified in a first programming language and the machine code program component is generated from source code in a second programming language.

15 . The system of claim 12 wherein the machine code program component including the joinpoint is generated in a first machine code language for execution on a first processor and a machine code program component including the advice operation is generated in a second machine code language for execution on a second processor.

16 . The system of claim 12 wherein the aspect binder component is configured for identifying a joinpoint based on a matching criterion included in the aspect specification, wherein the matching criterion based on at least one of an attribute of an addressable entity, an attribute of a relationship between a plurality of addressable entities, and an execution environment attribute.

17 . The system of claim 12 wherein the aspect binder component is configured for identifying the joinpoint in a first instance of an addressable entity and for not identifying the joinpoint in a second instance of the addressable entity.

18 . The system of claim 12 further comprising a memory management system component configured for associating aspect information with a processor memory location including the machine code instruction based on the aspect specification.

19 . The system of claim 18 wherein the memory management system component component is configured for identifying the processor memory location by a virtual processor memory address included in at least one of a structured processor memory address space, a non-sequential processor memory address space, and a sequential processor memory address space.

20 . The system of claim 12 wherein the access detector component is configured for marking a portion of the processor memory including the processor memory location for detecting the access.

21 . The system of claim 12 wherein the advice specification conforms to a schema for advice specifications for identifying an advice operation included in a machine code program component generated from source code written in any of a plurality of programming languages.

22 . A computer readable medium embodying a computer program, executable by a machine, for invoking an advice operation associated with a joinpoint, the computer program comprising executable instructions for:

identifying, based on a pointcut specification included in an aspect specification, a joinpoint in a machine code program component, the joinpoint including a machine code instruction;

identifying, based on an advice specification included in the aspect specification, an advice operation included in a machine code program component;

detecting an access to the machine code instruction in the joinpoint for execution by a processor; and

invoking the advice operation in association with detecting the access to the machine code instruction.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 11, 2017
From: OKRALABS LLC
To: SCENERA TECHNOLOGIES, LLC
Reel/Frame 044358/0633 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2008
From: MORRIS, ROBERT P.
To: OKRALABS LLC
Reel/Frame 020726/0997 →