The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Sep. 17, 2013

Filed:

Feb. 08, 2010
Applicants:

Vineet Kahlon, Princeton, NJ (US);

Nishant Sinha, Plainsboro, NJ (US);

Yun Zhang, Somerset, NJ (US);

Eric J. Kruus, Hillsborough, NJ (US);

Inventors:

Vineet Kahlon, Princeton, NJ (US);

Nishant Sinha, Plainsboro, NJ (US);

Yun Zhang, Somerset, NJ (US);

Eric J. Kruus, Hillsborough, NJ (US);

Assignee:

NEC Laboratories America, Inc., Princeton, NJ (US);

Attorney:
Primary Examiner:
Assistant Examiner:
Int. Cl.
CPC ...
G06F 9/44 (2006.01); G06F 9/45 (2006.01);
U.S. Cl.
CPC ...
Abstract

A system and method for analyzing a concurrent program employ asynchronous function calls for communication and recursion. A control flow graph is constructed based on a context-sensitive pointer analysis, whereupon encountering a function pointer, a points-to set of the function pointer is computed in a context-sensitive fashion to determine a set of potential function calls. The context-sensitive pointer analysis is terminated when no new potential function calls are encountered and where the potential function calls may contribute new data races other than those that exist in the contexts traversed thus far. To decide this, a characterization of pointer aliasing based upon complete update sequences is employed. A set of contexts that may contribute to different data races are enumerated by tracking update sequences for function and lock pointers and pointers that are shared or point to shared memory locations. Data race detection is carried out on the control flow graph.


Find Patent Forward Citations

Loading…