METHOD AND APPARATUS FOR TRANSPARENTLY INSTRUMENTING AN APPLICATION PROGRAM
First Claim
Patent Images
1. A method, comprising:
- storing at least a portion of an executable application program in a host system physical memory at a first host physical address;
instrumenting a copy of said portion of said executable application program and storing said instrumented copy in said host system physical memory at a second host physical address;
setting a corresponding access permission to read only for said first host physical address and setting a corresponding access permission to execute only for said second host physical address; and
executing said instrumented copy or reading said portion of said executable application program based, at least in part, on said access permissions.
1 Assignment
0 Petitions
Accused Products
Abstract
Generally, this disclosure describes systems and methods for transparently instrumenting a computer process. The systems and methods are configured to allow instrumenting executable code while permitting legacy memory scanning tools to monitor corresponding uninstrumented executable code stored in memory.
-
Citations
22 Claims
-
1. A method, comprising:
-
storing at least a portion of an executable application program in a host system physical memory at a first host physical address; instrumenting a copy of said portion of said executable application program and storing said instrumented copy in said host system physical memory at a second host physical address; setting a corresponding access permission to read only for said first host physical address and setting a corresponding access permission to execute only for said second host physical address; and executing said instrumented copy or reading said portion of said executable application program based, at least in part, on said access permissions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising, one or more storage mediums having stored thereon, individually or in combination, instructions that, when executed by one or more processors, result in the following operations comprising:
-
storing at least a portion of an executable application program in a host system physical memory at a first host physical address; instrumenting a copy of said portion of said executable application program and storing said instrumented copy in said host system physical memory at a second host physical address; setting a corresponding access permission to read only for said first host physical address and setting a corresponding access permission to execute only for said second host physical address; and executing said instrumented copy or reading said portion of said executable application program based, at least in part, on said access permissions. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A system, comprising:
-
host physical memory; and a processor configured to; store at least a portion of an executable application program in said host system physical memory at a first host physical address; instrument a copy of said portion of said executable application program and store said instrumented copy in said host system physical memory at a second host physical address; set a corresponding access permission to read only for said first host physical address and set a corresponding access permission to execute only for said second host physical address; and execute said instrumented copy or read said portion of said executable application program based, at least in part, on said access permissions. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification