Patents by Inventor Manu Sridharan
Manu Sridharan has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9753708Abstract: The present disclosure relates generally to the field of automatic conversion of sequential array-based programs to parallel MapReduce programs. In various examples, automatic conversion of sequential array-based programs to parallel MapReduce programs may be implemented in the form of systems, methods and/or algorithms.Type: GrantFiled: August 7, 2015Date of Patent: September 5, 2017Assignee: International Business Machines CorporationInventors: Stephen Fink, Rodric Rabbah, Cosmin A. Radoi, Manu Sridharan
-
Patent number: 9747187Abstract: Systems, methods are program products for simulating black box test results using information obtained from white box testing, including analyzing computer software (e.g., an application) to identify a potential vulnerability within the computer software application and a plurality of milestones associated with the potential vulnerability, where each of the milestones indicates a location within the computer software application, tracing a path from a first one of the milestones to an entry point into the computer software application, identifying an input to the entry point that would result in a control flow from the entry point and through each of the milestones, describing the potential vulnerability in a description indicating the entry point and the input, and presenting the description via a computer-controlled output medium.Type: GrantFiled: October 27, 2010Date of Patent: August 29, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Stephen Fink, Yinnon A. Haviv, Roee Hay, Marco Pistoia, Ory Segal, Adi Sharabani, Manu Sridharan, Frank Tip, Omer Tripp, Omri Weisman
-
Patent number: 9747089Abstract: The present disclosure relates generally to the field of automatic conversion of sequential array-based programs to parallel MapReduce programs. In various examples, automatic conversion of sequential array-based programs to parallel MapReduce programs may be implemented in the form of systems, methods and/or algorithms.Type: GrantFiled: October 21, 2014Date of Patent: August 29, 2017Assignee: International Business Machines CorporationInventors: Stephen Fink, Rodric Rabbah, Cosmin A. Radoi, Manu Sridharan
-
Patent number: 9720798Abstract: Systems, methods are program products for simulating black box test results using information obtained from white box testing, including analyzing computer software (e.g., an application) to identify a potential vulnerability within the computer software application and a plurality of milestones associated with the potential vulnerability, where each of the milestones indicates a location within the computer software application, tracing a path from a first one of the milestones to an entry point into the computer software application, identifying an input to the entry point that would result in a control flow from the entry point and through each of the milestones, describing the potential vulnerability in a description indicating the entry point and the input, and presenting the description via a computer-controlled output medium.Type: GrantFiled: June 11, 2012Date of Patent: August 1, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Stephen Fink, Yinnon A. Haviv, Roee Hay, Marco Pistoia, Ory Segal, Adi Sharabani, Manu Sridharan, Frank Tip, Omer Tripp, Omri Weisman
-
Publication number: 20160110175Abstract: The present disclosure relates generally to the field of automatic conversion of sequential array-based programs to parallel MapReduce programs. In various examples, automatic conversion of sequential array-based programs to parallel MapReduce programs may be implemented in the form of systems, methods and/or algorithms.Type: ApplicationFiled: October 21, 2014Publication date: April 21, 2016Inventors: Stephen Fink, Rodric Rabbah, Cosmin A. Radoi, Manu Sridharan
-
Publication number: 20160110176Abstract: The present disclosure relates generally to the field of automatic conversion of sequential array-based programs to parallel MapReduce programs. In various examples, automatic conversion of sequential array-based programs to parallel MapReduce programs may be implemented in the form of systems, methods and/or algorithms.Type: ApplicationFiled: August 7, 2015Publication date: April 21, 2016Inventors: Stephen Fink, Rodric Rabbah, Cosmin A. Radoi, Manu Sridharan
-
Patent number: 9135147Abstract: A novel system, computer program product, and method are disclosed for feedback-directed automated test generation for programs, such as JavaScript, in which execution is monitored to collect information that directs the test generator towards inputs that yield increased coverage. Several instantiations of the framework are implemented, corresponding to variations on feedback-directed random testing, in a tool called Artemis.Type: GrantFiled: April 26, 2012Date of Patent: September 15, 2015Assignee: International Business Machines CorporationInventors: Shay Artzi, Julian Dolby, Salvatore A. Guarnieri, Simon H. Jensen, Marco Pistoia, Manu Sridharan, Frank Tip, Omer Tripp
-
Publication number: 20150220739Abstract: A method includes determining selected global variables in a program for which flow of the selected global variables through the program is to be tracked. The selected global variables are less than all the global variables in the program. The method includes using a static analysis performed on the program, tracking flow through the program for the selected global variables. In response to one or more of the selected global variables being used in security-sensitive operations in the flow, use is analyzed of each one of the selected global variables in a corresponding security-sensitive operation. In response to a determination the use may be a potential security violation, the potential security violation is reported. Apparatus and computer program products are also disclosed.Type: ApplicationFiled: April 16, 2015Publication date: August 6, 2015Inventors: Shay Artzi, Ryan Berg, John Peyton, Marco Pistoia, Manu Sridharan, Takaaki Tateishi, Omer Tripp, Robert Weiner
-
Patent number: 9075997Abstract: A method includes determining selected global variables in a program for which flow of the selected global variables through the program is to be tracked. The selected global variables are less than all the global variables in the program. The method includes using a static analysis performed on the program, tracking flow through the program for the selected global variables. In response to one or more of the selected global variables being used in security-sensitive operations in the flow, use is analyzed of each one of the selected global variables in a corresponding security-sensitive operation. In response to a determination the use may be a potential security violation, the potential security violation is reported. Apparatus and computer program products are also disclosed.Type: GrantFiled: January 13, 2014Date of Patent: July 7, 2015Assignee: International Business Machines CorporationInventors: Shay Artzi, Ryan Berg, John Peyton, Marco Pistoia, Manu Sridharan, Takaaki Tateishi, Omer Tripp, Robert Wiener
-
Patent number: 8903702Abstract: Systems and methods are provided for creating a data structure associated with a software application that is based on at least one framework. According to the method, at least one Java Server Page file associated with the software application is analyzed. The Java Server Page (JSP) file includes at least one call to at least one library tag, and at least one Expression Language (EL) expression. A set of tag library usage information for the JSP file is generated based. The set of tag library usage information includes at least one variable, and a value of the at least one variable created by the at least one call. The EL expression is evaluated based on the variable and the value of the variable. A data structure is created for a static analysis engine based on EL expression. The data structure includes at least one Java expression representing the EL expression.Type: GrantFiled: August 31, 2011Date of Patent: December 2, 2014Assignee: International Business Machines CorporationInventors: Shay Artzi, Manu Sridharan
-
Patent number: 8869127Abstract: Disclosed is a novel computer implemented system, on demand service, computer program product and a method that provides a set of lock usages that improves concurrency resulting in execution performance of the software application by reducing lock contention through refactoring. More specifically, disclosed is a method to refactor a software application. The method starts with accessing at least a portion of a software application that can execute in an operating environment where there are more two or more threads of execution. Next, a determination is made if there is at least one lock used in the software application to enforce limits on accessing a resource. In response to determining that there is a lock with a first type of construct with a given set of features, the software application is refactored with the lock to preserve behavior of the software application.Type: GrantFiled: January 3, 2011Date of Patent: October 21, 2014Assignee: International Business Machines CorporationInventors: Julian Dolby, Manu Sridharan, Frank Tip, Max Schaefer
-
Publication number: 20140143880Abstract: A method includes determining selected global variables in a program for which flow of the selected global variables through the program is to be tracked. The selected global variables are less than all the global variables in the program. The method includes using a static analysis performed on the program, tracking flow through the program for the selected global variables. In response to one or more of the selected global variables being used in security-sensitive operations in the flow, use is analyzed of each one of the selected global variables in a corresponding security-sensitive operation. In response to a determination the use may be a potential security violation, the potential security violation is reported. Apparatus and computer program products are also disclosed.Type: ApplicationFiled: January 13, 2014Publication date: May 22, 2014Applicant: International Business Machines CorporationInventors: Shay Artzi, Ryan Berg, John Peyton, Marco Pistoia, Manu Sridharan, Takaaki Tateishi, Omer Tripp, Robert Weiner
-
Patent number: 8694971Abstract: A novel system, computer program product, and method are disclosed for transforming a program to facilitate points-to analysis. The method begins with accessing at least a portion of program code, such as JavaScript. In one example, a method with at least one dynamic property correlation is identified for extraction. When a method m is identified for extraction with the dynamic property correlation, a body of the loop l in the method m is extracted. A new method mp is created to include the body of the loop l with the variable i as a parameter. The loop l is substituted in the program code of the method m with the new method mp to create a transformed program code.Type: GrantFiled: October 5, 2011Date of Patent: April 8, 2014Assignee: International Business Machines CorporationInventors: Satish Chandra, Julian Dolby, Manu Sridharan, Frank Tip
-
Patent number: 8689191Abstract: Automated refactorings as implemented in modern IDEs for Java usually make no special provisions for concurrent code. Thus, refactored programs may exhibit unexpected new concurrent behaviors. We analyze the types of such behavioral changes caused by current refactoring engines and develop techniques to make them behavior-preserving, ranging from simple techniques to deal with concurrency-related language constructs to a framework that computes and tracks synchronization dependencies. By basing our development directly on the Java Memory Model we can state and prove precise correctness results about refactoring concurrent programs. We show that a broad range of refactorings are not influenced by concurrency at all, whereas other important refactorings can be made behavior-preserving for correctly synchronized programs by using our framework. Experience with a prototype implementation shows that our techniques are easy to implement and require only minimal changes to existing refactoring engines.Type: GrantFiled: March 5, 2010Date of Patent: April 1, 2014Assignee: International Business Machines CorporationInventors: Julian Dolby, Max Schaefer, Manu Sridharan, Frank Tip, Emina Torlak
-
Patent number: 8656496Abstract: A method includes determining selected global variables in a program for which flow of the selected global variables through the program is to be tracked. The selected global variables are less than all the global variables in the program. The method includes using a static analysis performed on the program, tracking flow through the program for the selected global variables. In response to one or more of the selected global variables being used in security-sensitive operations in the flow, use is analyzed of each one of the selected global variables in a corresponding security-sensitive operation. In response to a determination the use may be a potential security violation, the potential security violation is reported. Apparatus and computer program products are also disclosed.Type: GrantFiled: November 22, 2010Date of Patent: February 18, 2014Assignee: International Business Machines CorporationsInventors: Shay Artzi, Ryan Berg, John Peyton, Marco Pistoia, Manu Sridharan, Takaaki Tateishi, Omer Tripp, Robert Wiener
-
Publication number: 20130290786Abstract: A novel system, computer program product, and method are disclosed for feedback-directed automated test generation for programs, such as JavaScript, in which execution is monitored to collect information that directs the test generator towards inputs that yield increased coverage. Several instantiations of the framework are implemented, corresponding to variations on feedback-directed random testing, in a tool called Artemis.Type: ApplicationFiled: April 26, 2012Publication date: October 31, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Shay ARTZI, Julian DOLBY, Salvatore A. GUARNIERI, Simon H. JENSEN, Marco PISTOIA, Manu SRIDHARAN, Frank TIP, Omer TRIPP
-
Publication number: 20130275951Abstract: A method of executing a rendering engine including executing a web application including at least two operations a single thread of execution, generating an auxiliary map for instrumentation accesses of the web application, and detecting and reporting concurrent memory accesses of the web application as a race.Type: ApplicationFiled: April 16, 2012Publication date: October 17, 2013Applicant: International Business Machines CorporationInventors: Julian Dolby, Boris Petrov, Manu Sridharan, Martin Vechev
-
Patent number: 8516452Abstract: A technique for feedback-directed call graph expansion includes performing symbolic analysis on an interprocedural control flow graph representation of software code, skipping over a virtual method call in the control flow graph, using information obtained from the symbolic analysis as feedback to identify a target of the virtual method call, and iterating the symbolic analysis on a modified version of the control flow graph that associates the target with the virtual method.Type: GrantFiled: December 8, 2009Date of Patent: August 20, 2013Assignee: International Business Machines CorporationInventors: Satish Chandra, Stephen Fink, Manu Sridharan
-
Patent number: 8464223Abstract: A method of detecting a datarace between memory accesses within a program includes determining whether a datarace exists between a first access event in a first statement and a second access event in a second statement. It is then determined whether a third statement is more weakly protected than one of the first statement and the second statement.Type: GrantFiled: February 5, 2009Date of Patent: June 11, 2013Assignee: International Business Machines CorporationInventors: Jong-Deok Choi, Keunwoo Lee, Robert W. O'Callahan, Vivek Sarkar, Manu Sridharan
-
Patent number: 8434070Abstract: Systems and methods are provided for creating a data structure associated with a software application that is based on at least one framework. According to the method, source code and at least one configuration file of the software application is analyzed by at least one framework-specific processor so as to determine entry point information indicating entry points in the source code, request attribute access information indicating where attributes attached to a request data structure are read and written, and forward information indicating forwards performed by the software application. A data structure for a static analysis engine is created based on this information. The data structure includes a list of synthetic methods that model framework-related behavior of the software application, and a list of entry points indicating the synthetic methods and/or application methods of the software application that can be invoked by the framework.Type: GrantFiled: October 26, 2010Date of Patent: April 30, 2013Assignee: International Business Machines CorporationInventors: Shay Artzi, Ryan Berg, John T. Peyton, Jr., Marco Pistoia, Manu Sridharan, Robert Wiener