Patents Examined by Eric B. Kiss
  • Patent number: 7669192
    Abstract: An apparatus for determining whether or not a program violates a convention, including an input unit for receiving an input of a target program to be an object of a determination on whether to violate the convention; a violation storing unit for beforehand storing any one of an abstract syntax tree and a pattern which indicate a structure of a program violating the convention; a converter for converting the abstract syntax tree of the target program to a conversion tree with a predetermined conversion rule; and a determination unit for determining that the target program violates the convention on condition that at least a part of the conversion tree agrees with an abstract syntax tree violating the convention.
    Type: Grant
    Filed: October 31, 2006
    Date of Patent: February 23, 2010
    Assignee: International Business Machines Corporation
    Inventors: Goh Kondoh, Shinichi Hirose
  • Patent number: 7669183
    Abstract: A system for manipulating a document object model is provided. The system comprises a collection of document object model behavior elements, and a collection of scripts for performing actions associated with the set of behavior elements. Each behavior element comprises a name following a predetermined naming convention, an event attribute for associating the behavior element to an event, and other attributes for describing features of the behavior element. Each script is associated with a behavior element.
    Type: Grant
    Filed: October 3, 2003
    Date of Patent: February 23, 2010
    Assignee: Corel Corporation
    Inventors: Gordon Bowman, Peter Barrett
  • Patent number: 7657880
    Abstract: The latencies associated with retrieving instruction information for a main thread are decreased through the use of a simultaneous helper thread. The helper thread is permitted to execute Store instructions. Store blocker logic operates to prevent data associated with a Store instruction in a helper thread from being committed to memory. Dependence blocker logic operates to prevent data associated with a Store instruction in a speculative helper thread from being bypassed to a Load instruction in a non-speculative thread.
    Type: Grant
    Filed: August 1, 2003
    Date of Patent: February 2, 2010
    Assignee: Intel Corporation
    Inventors: Hong Wang, Tor Aamodt, Per Hammarlund, John Shen, Xinmin Tian, Milind Girkar, Perry Wang, Steve Shih-wei Liao
  • Patent number: 7657876
    Abstract: A system and method for determining where bottlenecks in a program's data accesses occur and providing information to a software developer as to why the bottlenecks occur and what may be done to correct them. A stream of data access references is analyzed to determine data access patterns (also called data access sequences). The stream is analyzed to find frequently repeated data access sequences (called hot data streams). Properties of the hot data streams are calculated and upon selection of a hot data stream are displayed in a development tool that associates lines of code with the hot data streams.
    Type: Grant
    Filed: November 16, 2004
    Date of Patent: February 2, 2010
    Assignee: Microsoft Corporation
    Inventor: Trishul M. Chilimbi
  • Patent number: 7644395
    Abstract: A system and method for employing bytecode modification techniques for tracing services within an application server. Application servers, such as those based on the Java 2 Enterprise Edition (“J2EE”) standard, include a variety of different services. In one embodiment of the invention, a group of services executed on an application server are identified for tracing. For each service in the group, a group of entry and/or exit methods to be traced are identified. The group of entry/exit methods may represent entry and/or exit points to and from the service, respectively. Once the service's method are identified, the service's bytecode is modified based on the particular group of entry/exit methods specified. The service is then executed and method invocations of the bytecode modified entry/exit methods are registered.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: January 5, 2010
    Assignee: SAP AG
    Inventors: Gregor K. Frey, Nikolai G. Nikolov
  • Patent number: 7644393
    Abstract: In a software development environment, a system and method for associating an assert with a unique identifier (“assert tag”), and using the unique identifier to store information associated with the assert in a database. Based on the unique identifier, information associated with the assert can be stored in a database or repository that contains assert information. This information can be updated, as well as displayed to the developer or tester. Information for the bugs associated with the assert can be retrieved from a database containing bug information and displayed to the developer or tester. Once the developer or tester has been presented with the information concerning the bugs associated with the assert, or other information associated with-the assert, the developer or tester can choose to enter or log-in a new bug into the database containing bug information.
    Type: Grant
    Filed: July 26, 2005
    Date of Patent: January 5, 2010
    Assignee: Microsoft Corporation
    Inventors: Kirk A. Glerum, Matthew J. Ruhlen, William Kennedy, Jeff David Mitchell
  • Patent number: 7634770
    Abstract: A method, and a corresponding mechanism, are used for resolving interface dependencies in kernel modules during an operating system (O/S) update. The method includes determining the O/S version for which each module is designed, determining a version of the updated O/S, comparing the O/S version for which each module is designed to the version of the updated O/S, and removing from the system those modules that are not compatible with the updated O/S.
    Type: Grant
    Filed: May 19, 2003
    Date of Patent: December 15, 2009
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Steven Roth
  • Patent number: 7627866
    Abstract: A system and method to update a patch index such that one or more properties in the patch index are associated with the patch, wherein the patch includes one or more components for the target software system; updating a class path at run-time for the target software system such that the patch associated with each one of the one or more properties supersedes prior patches for the same property; and wherein a component can include a class.
    Type: Grant
    Filed: December 15, 2004
    Date of Patent: December 1, 2009
    Assignee: Bea Systems, Inc.
    Inventors: Ross T. Bunker, Roger B. Weber, Lawrence A. Jones
  • Patent number: 7590973
    Abstract: Systems and methods for gathering, organizing and executing test cases irrespective of the language or format employed. Implementation of the present invention takes place in association with a harness that is interposed between a software package to be tested and a program module. Programming code comprising a connector interfaces the harness with the program module in order for the harness to receive a hierarchy that comprises one or more test cases, test suites and/or test modules. The harness traverses the hierarchy and executes test cases selected by a user on the developed software package. Therefore, in accordance with the present invention, individuals testing the software package can select any desired test case format (programming language, machine architecture, operating system, test sequence, etc.) that satisfies the demands of the developed software package, and the harness will gather, organize, and execute the developed test case(s) irrespective of the language or format employed.
    Type: Grant
    Filed: June 30, 2000
    Date of Patent: September 15, 2009
    Assignee: Microsoft Corporation
    Inventors: Damon Barry, Greg Veith, Brent Jensen, Frank Truong
  • Patent number: 7584458
    Abstract: Techniques and tools for implementing a source code annotation language are described. In one aspect, keywords are added to a function interface to define a contract for the function independent of function call context. In another aspect, annotations are inserted at global variables, formal parameters, return values, or user-defined types. The annotations include, for example, properties and qualifiers. A property can indicate, for example, a characteristic of a buffer. In another aspect, an annotation indicates that a value has usability properties sufficient to allow a function to rely on the value, where the usability properties depend on value type.
    Type: Grant
    Filed: October 2, 2003
    Date of Patent: September 1, 2009
    Assignee: Microsoft Corporation
    Inventors: Manuvir Das, Manuel Alfred Fahndrich, Ramanathan Venkatapathy, Daniel W. Weise, William Hunter Hudson, Sameet Harishanker Agarwal, William Hiroaki Shihara, Hannes Ruescher, Spencer Wong Low, F. Soner Terek
  • Patent number: 7574698
    Abstract: A method, computer program product, and data processing system for detecting and identifying data crossover errors in servlet code are disclosed. According to a preferred embodiment, techniques of aspect-oriented programming (AOP) are used to instrument JAVA Servlet code to detect potential data crossover errors. Specifically, pointcuts are defined to intercept both the association follow an object with a particular session and the “getting” and “setting” of such objects. Advice code associated with these pointcuts is used to update and/or consult a “collator” data structure, which is used to determine if an object or variable associated with one session is being accessed by a different session. In a preferred embodiment, the AspectJ aspect-oriented programming language/system is used to define the pointcuts and advice code.
    Type: Grant
    Filed: June 16, 2005
    Date of Patent: August 11, 2009
    Assignee: International Business Machines Corporation
    Inventors: Arun Kumar, Rohit Singh
  • Patent number: 7574707
    Abstract: A method includes requesting a computer in a network to install a first application and execute the first application, transferring one or more files to the computer, making modifications to the computer to install and execute the first application on the computer while recording the modifications, the modifications comprising allocating a resource to the first application, halting the first application on the computer, and reversing a portion of the modifications to the computer according to the recorded modifications. The reversing includes deallocating the resource from the first application. The method also includes making modifications to the computer to install and execute a second application on the available computer while recording the modifications, where the modifications include allocating the resource to the second application.
    Type: Grant
    Filed: November 12, 2003
    Date of Patent: August 11, 2009
    Assignee: SAP AG
    Inventors: Erol Bozak, Alexander Gebhart
  • Patent number: 7543284
    Abstract: An improved method and apparatus for performing program code conversion is provided and, more particularly, for generating improved intermediate representations for use in program code conversion. During program code conversion, a partial dead code elimination optimization technique is implemented to identify partially dead register definitions within a block of program code being translated. The partial dead code elimination is an optimization to the intermediate representation in the form of code motion for blocks of program code ending in non-computed branches or computed jumps, where target code for all dead child nodes of a partially dead register definition is prevented from being generated and target code for partially dead child nodes of a partially dead register definition is delayed from being generated until after target code is generated for all fully live child nodes for the partially dead register definition.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: June 2, 2009
    Assignee: Transitive Limited
    Inventors: Ian Graham Bolton, David Ung
  • Patent number: 7543279
    Abstract: A program execution data trace is created by instrumenting a program to record value sets during execution and an instruction trace. By simulating instructions either backward or forward from a first instruction associated with a recorded value set to a second instruction according to the instruction trace, a value set is determined for the second instruction. Backward and forward simulation can be combined to complement each other. For backward simulation, a table of simulation instructions is preferably maintained, which associates program instructions encountered in the instruction trace with simulation instructions which reverse the operation of the associated program instructions. Preferably, one or more probes is inserted into the program to save values of particular variables whose value may be difficult to determine. Preferably, the instruction trace is displayed alongside and correlated with the data trace.
    Type: Grant
    Filed: May 25, 2004
    Date of Patent: June 2, 2009
    Assignee: Symantec Operating Corporation
    Inventors: Andrew E. Ayers, Richard Schooler, Anant Agarwal
  • Patent number: 7543275
    Abstract: A mechanism has been developed for transforming different test suites, written for different test harnesses, into a common XML-type format that can be read by one test harness. Thus differences in the structure of the test suites is transparent to the test harness. To implement this mechanism, a component has been developed that parses XML descriptors and provides an API to the test harness.
    Type: Grant
    Filed: January 29, 2004
    Date of Patent: June 2, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Olga Kuturianu, Victor Rosenman
  • Patent number: 7539973
    Abstract: A programming language syntax that embeds object type declaration in the object name. The objects are self-documenting because its object type is embedded in each object. In one embodiment, the object type-declaration prefix precedes the object name and explicitly declares the object type information. For example, a SQL object FirstName, may be implemented as SQL@FirstName, a URL object may be implemented as URL@FirstName, environment object from an environment table may be implemented as ENV@user.
    Type: Grant
    Filed: June 3, 2005
    Date of Patent: May 26, 2009
    Inventor: Bruce Hodge
  • Patent number: 7536677
    Abstract: A method, system, and computer program product are disclosed in a data processing system for determining defect detection efficiency. Code development steps are tracked using a repository while code is being developed. The tracked development steps are used to determine an earliest first time when a defect could have been discovered. An actual second time when the defect was discovered is determined. The efficiency of defect detection is determined by comparing the time elapsed between the first and second times.
    Type: Grant
    Filed: December 19, 2003
    Date of Patent: May 19, 2009
    Assignee: International Business Machines Corporation
    Inventor: Cohan Sujay Carlos
  • Patent number: 7536687
    Abstract: The system and method facilitates transition from one software packaging model to a new model. New software packages include a capability package and an enabler package. The capability package provides new or enhanced functionality, and the enabler package serves to provide information that the user has purchased the particular software involved, and is entitled to use the optional feature that the package delivers. The system and method provides for installation of the new software package on older software packages in a non-disruptive manner.
    Type: Grant
    Filed: June 23, 2004
    Date of Patent: May 19, 2009
    Assignee: EMC Corporation
    Inventor: Brandon Myers
  • Patent number: 7530056
    Abstract: The invention provides an improved method and method for locating the origin of runtime defect in software programs. A differential debugging technique may be implemented to locate the diversion point where two programs start to behave differently. In one approach, the method generally involves running the two programs and generating respective control flow diagrams via a static code analyzer or the like. Tracer and supervisor modules may be used to replace addresses in registers with symbols and/or position-independent offsets, and to locate where differences in the register states occur.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: May 5, 2009
    Assignee: International Business Machines Corporation
    Inventors: Yaakov Yaari, Andre Heilper
  • Patent number: RE46000
    Abstract: A channel equalizer includes an overlap unit, an estimator, a calculator, a compensator, and a save unit. The overlap unit overlaps a group of data packets in a broadcast signal. The group data packets include a head, a body, and a tail, and a known data sequence is periodically included in the body. The estimator estimates a CIR of each data region the body using the known data sequence, and it further estimates CIRs of data regions in the head or tail using the CIRs obtained for the data regions in the body. The calculator calculates equalization coefficients based on the CIRs estimated by the estimator, and the compensator compensates channel distortion of the overlapped data using the equalization coefficients. The save unit saves the compensated data.
    Type: Grant
    Filed: April 25, 2014
    Date of Patent: May 10, 2016
    Assignee: LG ELECTRONICS INC.
    Inventors: Byoung Gill Kim, In Hwan Choi, Kook Yeon Kwak