Patents Examined by Joanne Macasiano
-
Patent number: 9336128Abstract: A method for code analysis includes generating, by a computer processor, an execution path through software code. Generating the execution path includes adding, for an object having an undefined class, a first symbolic type constraint to a path condition of the first execution path based on a first statement in the execution path, and adding, for the object having the undefined class, a second symbolic type constraint to the path condition of the execution path based on a second statement in the first execution path. The method further includes the computer processor making a determination that the path condition of the execution path is infeasible based on the first symbolic type constraint of the object being inconsistent with the second symbolic type constraint of the object, and discarding the execution path based on the determination.Type: GrantFiled: March 21, 2014Date of Patent: May 10, 2016Assignee: Oracle International CorporationInventors: Lian Li, Andrew Santosa
-
Patent number: 9329876Abstract: The described implementations relate to resource aware programming. In one case a program is obtained that is configured to perform a task in accordance with one or more quantitative metrics. An approximate version can be generated from the program. The approximate version is configured to perform the task in a manner that satisfies the one or more quantitative metrics while using fewer computer resources than the program.Type: GrantFiled: May 20, 2009Date of Patent: May 3, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Trishul A. Chilimbi, Woongki Baek
-
Patent number: 9317265Abstract: Disclosed here are methods, systems, paradigms and structures for optimizing intermediate representation (IR) of a script code for atomic execution. Atomic execution of the script is achieved by generating portions of the IR as an atomic transaction. In an atomic transaction, a series of operations either all execute, or none executes. The IR includes checkpoints that evaluate to one of two possible values. The checkpoint evaluates to a first value when there is no error during execution, and evaluates to a second value when an error occurs. The IR is optimized for atomic execution by regenerating a portion of the IR including the checkpoint and code associated with the checkpoint as a transaction. When an error occurs during the execution of the transaction, the transaction is aborted and a state of execution of the script code is reverted to a state prior to the beginning of the transaction.Type: GrantFiled: March 25, 2013Date of Patent: April 19, 2016Assignee: Facebook, Inc.Inventors: Ali-Reza Adl-Tabatabai, Guilherme de Lima Ottoni, Michael Paleczny
-
Patent number: 9286197Abstract: Method and system of testing software using real time replication. At least some illustrative embodiments are methods comprising interacting (by a human tester) with a first software program executed on a first computer system (the interacting causes an operation to be performed on the first software program), duplicating the operation on a second software program executed on a second computer system coupled to the first computer system (the duplicating on the second computer system in real time with the interacting and the duplicating without a human tester), programmatically analyzing a result of the operation on the first computer system against a result of the operation on the second computer system, and notifying the human tester (by way of the first computer system) when the result of the operation on the second computer system is unexpected.Type: GrantFiled: May 29, 2008Date of Patent: March 15, 2016Assignee: Hewlett Packard Enterprise Development LPInventors: Alexei Ledenev, Ilan Shufer
-
Patent number: 9223582Abstract: Embodiments provide a method for generating a user interface (UI) using a UI description language. An exemplary method may be executed by a computer processor to designate each element of the UI as either a container element or a child element, store a design guideline as a set of editable rules, integrate the set of editable rules in a prototyping tool, integrate the prototyping tool in a development environment and render the UI by using a rules engine to interpret the set of editable rules.Type: GrantFiled: September 12, 2011Date of Patent: December 29, 2015Assignee: SAP SEInventor: Dietrich Mayer-Ullmann
-
Patent number: 9182961Abstract: A system and method accepts source code including one or more variables or constants, and, for those variables or constants flagged as those that are to be automatically provided to a gateway, generates or provides communication code and a description that allows the values to be sent to a gateway for retrieval using a variety of formats. More specifically, certain containers within the source code are marked to indicate that the certain containers are remotely retrievable. These marked containers are linked to an entry in the profile. Then responsive to the source code indicating that at least one of the devices is a wireless portable device, a new profile is generated and is used along with the source code to generate a set of code for at least one of the one or more devices that can repeatedly providing, to a gateway, a value named in the source code.Type: GrantFiled: December 17, 2007Date of Patent: November 10, 2015Assignee: Cisco Technology, Inc.Inventor: Gilman Tolle
-
Patent number: 9176842Abstract: A method for control flow analysis according to an embodiment of the present invention includes: acquiring an original function call tree of a program, wherein nodes of the original function call tree represent functions and a parent/child relation between the nodes represents a calling relation; generating a corresponding function dominator tree from the calling relation, wherein nodes of the function dominator tree represent the functions and a parent/child relation between the nodes represents a dominator relation, wherein a first function dominates a second function if all the invocations to the second function are originated by the first function; and simplifying the original function call tree according to the function dominator tree so as to obtain a simplified function call tree. According to an embodiment of the present invention, the function call tree for control flow analysis can be simplified.Type: GrantFiled: December 20, 2012Date of Patent: November 3, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Qin Yue Chen, Qi Liang, Hong Chang Lin, Feng Liu
-
Patent number: 9152389Abstract: A trace generating unit according to an embodiment of the present invention generates parallel trace information by executing a sequential program code, in case that the above-described sequential program code is parallelized and executed. The sequential program code includes a plurality of processing codes, codes to record a start and an end of the execution for each processing code, and codes to record a start and an end of the execution for each thread. The parallel trace information includes an execution sequence of the threads and an execution sequence of the processing codes for each thread.Type: GrantFiled: March 8, 2011Date of Patent: October 6, 2015Assignee: Kabushiki Kaisha ToshibaInventors: Susumu Takeda, Hidenori Matsuzaki
-
Patent number: 9146718Abstract: Optimizing compiled code includes finding a portion of the compiled code arising from method calls in a portion of source code that were not chained method calls. Modified code is produced for the portion of the compiled code, wherein the modified code conforms to compiled code that would have arisen from source code having chained calls equivalent to the method calls that were not chained in the portion of the source code.Type: GrantFiled: August 10, 2013Date of Patent: September 29, 2015Assignee: International Business Machines CorporationInventor: Berthold M. Lebert
-
Patent number: 9135137Abstract: A method for control flow analysis according to an embodiment of the present invention includes: acquiring an original function call tree of a program, wherein nodes of the original function call tree represent functions and a parent/child relation between the nodes represents a calling relation; generating a corresponding function dominator tree from the calling relation, wherein nodes of the function dominator tree represent the functions and a parent/child relation between the nodes represents a dominator relation, wherein a first function dominates a second function if all the invocations to the second function are originated by the first function; and simplifying the original function call tree according to the function dominator tree so as to obtain a simplified function call tree. According to an embodiment of the present invention, the function call tree for control flow analysis can be simplified.Type: GrantFiled: December 20, 2012Date of Patent: September 15, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Qin Yue Chen, Qi Liang, Hong Chang Lin, Feng Liu
-
Patent number: 9110653Abstract: Product data management systems, methods, and mediums. A method includes receiving a functional model, and identifying a plurality of elements of the functional model. Each element corresponds to one or more machine operations. The method includes identifying concurrencies between elements to determine at least one set of elements. The method includes creating an execution thread for each of the sets of elements. The method can include generating a rule-based programmable logic controller (PLC) program corresponding to the functional model, based on the execution threads.Type: GrantFiled: February 2, 2012Date of Patent: August 18, 2015Assignee: Siemens Product Lifecycle Management Software Inc.Inventors: Arquimedes Martinez Canedo, Lingyun Lu
-
Patent number: 9098621Abstract: The described implementations relate to analysis of computing programs. One implementation provides a technique that can include accessing values of input variables that are processed by test code and runtime values that are produced by the test code while processing the input variables. The technique can also include modeling relationships between the runtime values and the values of the input variables. The relationships can reflect discontinuous functions of the input variables.Type: GrantFiled: February 28, 2011Date of Patent: August 4, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Alice X. Zheng, Madanlal S. Musuvathi, Nishant A. Mehta
-
Patent number: 9043744Abstract: Systems, Apparatus, methods, and computer program products are provided for converting an existing artifact to one or more new artifacts. For example, in one embodiment, a computing device can receive input identifying an existing artifact for conversion to one or more new artifacts. One or more items from the existing artifact and their respective types can be identified for conversion. Then, the one or more items of the existing artifact can be converted to one or more new artifacts.Type: GrantFiled: September 7, 2011Date of Patent: May 26, 2015Inventors: Melissa Roberts, Sherry Cowart, Melissa Campbell
-
Patent number: 9003370Abstract: There are provided: a test executing section which generates a plurality of logs when executing a coverage test for an application based on an inputted parameter; and a result processing section which generates a point candidate report based on the plurality of logs. The plurality of logs respectively indicate a call stack of a method designating the parameter as an argument among a plurality of methods called during execution of the coverage test. The call stack indicates a location on the application, in which a call of the method is defined. The point candidate report indicates a candidate for a point in the application, for which a modification is necessary when a dispatch of process is executed based on the parameter.Type: GrantFiled: March 2, 2011Date of Patent: April 7, 2015Assignee: NEC CorporationInventor: Kenji Soejima
-
Patent number: 8978012Abstract: A system, apparatus and method for reporting a failure in execution of a software transaction (e.g., scripts and executables to install software on a computer) to a network resource that can then store the error-related information and automatically provide a previously determined solution to the error or links to resources to which the customer can refer for help in resolving the problem is provided. Automatically searching a database of reported errors and their solutions for a variety of products and providing a found solution to a customer experiencing an error (e.g., an installation error) is further provided. In the event that a solution to a customer-experienced error is not found by the network resource, alternate sites for information such as a customer support website can also be provided.Type: GrantFiled: March 28, 2008Date of Patent: March 10, 2015Assignee: Symantec Operating CorporationInventor: James Cabell Poole
-
Patent number: 8966442Abstract: A method to manage program code that runs in a computer system comprising: producing a transfer template information definition structure in a computer readable storage device that includes a provider code attribute a similarity measure attribute and at least one results attribute; producing a transfer instance of the transfer template information definition structure that associates a provider code object identified as corresponding to the respective managed code object with the provider object code attribute and that associates the determined measure of similarity with the similarity measure attribute; using the transfer instance to obtain results information from a provider system that includes information about the provider code object.Type: GrantFiled: August 31, 2011Date of Patent: February 24, 2015Assignee: SAP SEInventors: Veit Eska, Christoph Vehns
-
Patent number: 8954949Abstract: Software fix packs and/or APAR's are maintained at a server for use on a requesting computer system. The requesting computer system makes a request for a specific APAR, which is identified by a version number, from the server. The server determines, by examining the requesting computer's request, whether the requesting computer system has all required software dependencies for the requested APAR. When it is determined what the requesting computer systems needs, the server bundles the requested APAR and any required software dependencies, not already on the requesting computer system, for shipment to the requesting computer system.Type: GrantFiled: October 11, 2010Date of Patent: February 10, 2015Assignee: International Business Machines CorporationInventors: B. G. Prashanth Bhat, Madhu B. Ananthapadmanabh
-
Patent number: 8949808Abstract: Systems and methods for the vectorization of software applications are described. In some embodiments, a compiler may automatically generate both scalar and vector versions of a function from a single source code description. A vector interface may be exposed in a persistent dependency database that is associated with the function. This may allow a compiler to make vector function calls from within vectorized loops, rather than making multiple serialized scalar function calls from within a vectorized loop. This may in turn facilitate the vectorization of hierarchical code, which may improve application performance when vector execution resources are available.Type: GrantFiled: September 23, 2010Date of Patent: February 3, 2015Assignee: Apple Inc.Inventor: Jeffry E. Gonion
-
Patent number: 8943488Abstract: Methods for updating video game software or handheld game devices, and systems for performing the methods. In some embodiments a first handheld game device with a later version of a game update software of a second handheld game device with an earlier version of the game.Type: GrantFiled: December 31, 2007Date of Patent: January 27, 2015Assignee: Activision Publishing, Inc.Inventors: Gregory Keith Oberg, Jesse Nathaniel Booth
-
Patent number: 8938729Abstract: A two-pass technique for instrumenting an application is disclosed. One pass may be performed statically by analyzing the application and inserting probes while the application is not running. Another pass may be performed dynamically by analyzing data collected by the probes while the application runs to derive metrics for the probes. One or more metrics for each probe may be analyzed to determine whether to dynamically modify the probe. By dynamically modifying the probe, the application does not need to be shut down. Dynamically modifying the probe could include removing the probe from the application or moving the probe to another component (e.g., method) in the application, as examples. For example, the probe might be moved to a component that is either up or down the call graph from the component that the probe is presently in.Type: GrantFiled: October 12, 2010Date of Patent: January 20, 2015Assignee: CA, Inc.Inventors: David Brooke Martin, Marco Gagliardi, Mark Jacob Addleman