Patents Examined by Hossain Morshed
  • Patent number: 8701086
    Abstract: An aspect of the present invention facilitates analysis of software code written in a programming language. In one embodiment, a visual interface designed to receive values identifying constructs of the programming language is provided on a display unit. In response to receiving, from a user using the visual interface, values corresponding to a construct of interest, a rule indicating a string of characters (that would constitute the construct of interest) is generated based on the received values. The generated rule is then applied to the software code to identify blocks matching the string of characters, each block representing a corresponding occurrence of the construct of interest in the software code.
    Type: Grant
    Filed: January 17, 2012
    Date of Patent: April 15, 2014
    Assignee: NIIT Technologies Ltd
    Inventors: Udayan Banerjee, Eswaran Narasimhan
  • Patent number: 8694964
    Abstract: Documentation having code samples is managed. Documentation describing programming code for a software product is received. The documentation references a code sample having an associated test module for determining whether the code sample is valid. The code sample is tested by executing the associated test module to produce a test result indicating whether the code sample is valid. The documentation, code sample, and test result are stored. The documentation, code sample, and test result may be provided to a client adapted to display the code sample and test result to a user of the client. Invalid code samples in the documentation may be identified using the test modules and the invalid code samples may be replaced to make the code samples valid.
    Type: Grant
    Filed: March 23, 2011
    Date of Patent: April 8, 2014
    Assignee: Google Inc.
    Inventor: Antoine Picard
  • Patent number: 8694986
    Abstract: The present invention extends to methods, systems, and computer program products for providing update notifications on distributed application objects. When a new version of an object is created that another object depends on, a notification can be added to the dependent object to alert a person that manages the dependent object of the creation of the updated object. Dependent objects can include template objects, such as virtual machine template objects that refer to virtual disk objects and service template objects that refer to one or more virtual machine template objects, as well as service instance objects that represent service instances that are instantiated from template objects. Versions of objects within a family can be identified by sharing a family name and having different releases. A timestamp is used to represent when an object is released to determine which version of an object is the newest version in a family.
    Type: Grant
    Filed: December 15, 2011
    Date of Patent: April 8, 2014
    Assignee: Microsoft Corporation
    Inventors: Alan Shi, Srivatsan Parthasarathy, Biddappa Nanaiah Berera, Rajeet Nair, Rakesh Malhotra, Michael Michael, Eric Joseph Winner
  • Patent number: 8694978
    Abstract: Methods, systems, computer-readable media, and apparatus for determining function side effects of a program function are disclosed. Source code of one or more prototype functions that is configured to simulate the function side-effect behaviors of a program function can be provided, and the compiler can determine the functional side effects of the program function in various specific program contexts based on the source code of the prototype functions rather than the source code of the program function. Optimization procedures can be performed based on the function side effects of the program function derived from the prototype functions and the program contexts.
    Type: Grant
    Filed: March 25, 2011
    Date of Patent: April 8, 2014
    Assignee: Google Inc.
    Inventors: Silvius V. Rus, Xinliang David Li
  • Patent number: 8689201
    Abstract: A method of automatically creating functionally and structurally diverse equivalent copies of software executables using return oriented programming for the purpose of passing through a filter and other purposes includes starting with a program and a target runtime environment, creating a return oriented instruction library having a plurality of code fragments which end in a ‘return’ instruction from the program and chaining fragments together to automatically form diverse equivalent copies of software executables using return oriented programming.
    Type: Grant
    Filed: January 27, 2011
    Date of Patent: April 1, 2014
    Assignee: Telcordia Technologies, Inc.
    Inventors: Eric van den Berg, Michael W Little
  • Patent number: 8683428
    Abstract: Various embodiments provide a mechanism by which a driver writer can describe the operation set of a particular driver using an intermediary representation, such as an XML. A generation tool can then process the intermediary representation and generate client code and device driver code to support these operations. In one or more embodiments, driver operation and associated elements that support the driver operation can be described according to a customized schema that is specific to the operation of the particular device driver.
    Type: Grant
    Filed: March 23, 2011
    Date of Patent: March 25, 2014
    Assignee: Microsoft Corporation
    Inventor: Paul Sliwowicz
  • Patent number: 8683448
    Abstract: A debugger that includes a breakpoint protection mechanism that detects when the program being debugged has been modified to overwrite one or more instructions corresponding to existing breakpoints. When the debugger halts execution of a program being debugged, all of the set breakpoints are checked by determining whether the instruction corresponding to each breakpoint has changed. If any of the instructions corresponding to the breakpoints has changed, the corresponding breakpoint is removed. An optional warning may be provided to the user to inform the user of any removed breakpoints.
    Type: Grant
    Filed: October 28, 2010
    Date of Patent: March 25, 2014
    Assignee: International Business Machines Corporation
    Inventor: Cary L. Bates
  • Patent number: 8650543
    Abstract: During a compatibility testing technique, a portable electronic device launches a test version of a module in the application prior to executing the application in an environment on the portable electronic device. This module may be associated with the external electronic device (such as an audio jack swiper), and launching the test version of the module may involve providing configuration information associated with operation of the module to the environment. If, in response to the configuration information, the test version is initialized correctly by the environment, the portable electronic device subsequently executes the application with the module. Alternatively, if, in response to the configuration information, the test version is not initialized correctly by the environment, the portable electronic device subsequently executes the application without the module.
    Type: Grant
    Filed: March 23, 2011
    Date of Patent: February 11, 2014
    Assignee: Intuit Inc.
    Inventor: Jordan Banes Winch
  • Patent number: 8640093
    Abstract: Hosted applications are developed to be run in a hosted network environment and with access to host resources such as server databases and messaging systems. The host applications may include tag based requests for host resources. A platform-specific native host is used on a mobile device which interacts with a hosted application and identifies content-based request for host resources. The native host then determines and performs appropriate functionality in the context of a mobile platform to satisfy the host resource request. Hosted applications may thereby be run natively on mobile devices of various mobile platforms and accessed even when the mobile devices lack network connections.
    Type: Grant
    Filed: June 24, 2011
    Date of Patent: January 28, 2014
    Assignee: Amazon Technologies, Inc.
    Inventors: Sunbir Gill, Matthew A. Jones, Ameesh Paleja
  • Patent number: 8607204
    Abstract: A method of analyzing single thread access by a variable of a multi-threaded program is provided. The method includes computing a thread identifier of a thread to be executed in a node of the multi-thread program; computing multiple threads configured to concurrently execute the node; and computing thread accessibility by deducing one or more variables that are executed in a single thread of the program from one or more pairs of the computed threads that concurrently execute the node.
    Type: Grant
    Filed: June 28, 2011
    Date of Patent: December 10, 2013
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Sun-Ae Seo, Sung-Do Moon
  • Patent number: 8589893
    Abstract: In certain embodiments, execution traces for a program definition of an application are accessed. Probability information for components of the program definition is computed based at least in part upon the execution traces. Program definition slices are determined based at least in part upon the probability information. The program definition slices comprises a baseline slice and at least one supplemental slice. The baseline slice is communicated to a client in response to a request for the application. At least one supplemental slice is communicated to the client to allow the patching of the baseline slice with the at least one supplemental slice to recreate at least a portion of the program definition.
    Type: Grant
    Filed: March 22, 2011
    Date of Patent: November 19, 2013
    Assignee: Amazon Technologies, Inc.
    Inventor: Nicholas A. Allen
  • Patent number: 8544000
    Abstract: An information processing device includes an installation unit which downloads installation data of an application program corresponding to a function from an external device and installs the application program. A license acquisition unit acquires a license file from an external device in order to activate the function. A license managing unit manages presence of a license of the function independently of presence of the license file. A license transfer managing unit transfers the license from a source device to a destination device and updates the presence of the license of the function. An automatic return unit automatically returns the transferred license to the source device according to automatic return conditions stored in the information processing device.
    Type: Grant
    Filed: May 24, 2011
    Date of Patent: September 24, 2013
    Assignee: Ricoh Company, Ltd.
    Inventor: Yoshihiro Ogura
  • Patent number: 8516457
    Abstract: Disclosed are embodiments a computer-implemented method, a system and an associated program storage device that provide for automatic programming language grammar partitioning to solve the “code too large” problem. The embodiments partition a particular programming language grammar into logical subsets based on a set of partitioning heuristics and using a dependency graph that is preprocessed so as to be devoid of any cyclically connected grammar rule nodes. For each logical subset, textual code for a corresponding portion of a parsing program can be generated and then converted into machine-readable code for that corresponding portion of the parsing program. Thus, small amounts of textual code for portions of a parsing program are discretely converted into machine-readable code, thereby avoiding the “code too large” problem. The machine-readable code for all portions of the parsing program can then be merged and the parsing program can be executed in order to parse a corpus.
    Type: Grant
    Filed: June 28, 2011
    Date of Patent: August 20, 2013
    Assignee: International Business Machines Corporation
    Inventors: Pankaj Dhoolia, Mangala G. Nanda, Krishna Nandivada Venkata, Diptikalyan Saha
  • Patent number: 8495618
    Abstract: Technologies are provided herein for seamlessly updating firmware in a high availability enabled solution. A system for updating firmware in a high availability enabled solution includes a first active node that is functional on the system and which is connected to a firmware update client and a second passive node that is in an active-passive relationship with the first node. The first node receives a firmware update command and retrieves the updated firmware from the firmware update client. The first node then updates firmware of the second node using the updated firmware. Upon updating the firmware of the second node, the first node sets an indicator flag associated with the second node, which notifies the second node to become the active node upon being rebooted. The first node then reboots the second node, which then updates the firmware of the first node with the updated firmware.
    Type: Grant
    Filed: March 31, 2010
    Date of Patent: July 23, 2013
    Assignee: American Megatrends, Inc.
    Inventors: Joseprabu Inbaraj, Jothiram Selvam
  • Patent number: 8479152
    Abstract: Modeling non-functional requirements (NFRs) in a computer programming environment. In one aspect, this further comprises: identifying use case (UC) artifacts having one or more NFRs; retrieving the one or more NFRs and any data associated therewith; analysing the associated data to define a test case therefor; retrieving a UC realization from a model to determine one or more possible program flows; and testing each possible program flow to select the test case which verifies the use case required, thereby modeling the NFR.
    Type: Grant
    Filed: October 22, 2010
    Date of Patent: July 2, 2013
    Assignee: International Business Machines Corporation
    Inventors: Giuseppe Ciano, Scot MacLellan, Antonio Perrone
  • Patent number: 8464208
    Abstract: Systems and methods are described for capturing and utilizing specific module dependency information. A hierarchical model can be created to arrange the components an existing software system in a particular hierarchy. The model defines a priority of dependencies among the components. A tool is provided for analyzing each class file of the system for references to other class files and determining, for each said class file, whether each reference is acceptable according to the hierarchical model. Once the class files and references have been analyzed, a surrogate class file can be automatically generated for the references that are determined to be unacceptable according to the hierarchical model. This process can utilize white lists and black lists associated with the class files, where the white lists specify modules to which references are acceptable and the black lists specify modules to which references are unacceptable.
    Type: Grant
    Filed: March 26, 2010
    Date of Patent: June 11, 2013
    Assignee: Oracle International Corporation
    Inventor: Lawrence Feigen
  • Patent number: 8458650
    Abstract: In one embodiment, the invention comprises partial fault tolerant stream processing applications. One embodiment of a method for implementing partial fault tolerance in a stream processing application comprising a plurality of stream operators includes: defining a quality score function that expresses how well the application is performing quantitatively, injecting a fault into at least one of the plurality of operators, assessing an impact of the fault on the quality score function, and selecting at least one partial fault-tolerant technique for implementation in the application based on the quantitative metric-driven assessment.
    Type: Grant
    Filed: March 29, 2010
    Date of Patent: June 4, 2013
    Assignee: International Business Machines Corporation
    Inventors: Henrique Andrade, Bugra Gedik, Gabriela Jacques da Silva, Kun-Lung Wu
  • Patent number: 8429641
    Abstract: A system, method, and computer-readable medium are disclosed for automatically migrating entitled digital assets from a source system to the target system. A first personalization agent is installed on a target system. A first set of digital assets entitlement data is provided along with an associated first set of digital assets data, which is then installed on the target system by the first personalization agent. A second set of digital assets entitlement data associated with a second set of digital assets data installed on a source system is determined by a second personalization agent. The second set of digital assets entitlement data is disassociated from the second set of system identifier data and then associated with the first set of system identifier data. The second set of digital assets is then installed the target system by the first personalization agent.
    Type: Grant
    Filed: February 2, 2010
    Date of Patent: April 23, 2013
    Assignee: Dell Products L.P.
    Inventors: Clint H. O'Connor, Gary D. Huber, Michael Haze, William A. Curtis