Patents Examined by Todd Ingberg
  • Patent number: 7343600
    Abstract: A method for providing an image of software installed on a computer system is disclosed. The method includes the steps of deconstructing the image into at least one portion and creating at least one module from the at least one portion of the image. The deconstructing step can include the steps of scanning an image and identifying at least one portion of the image to be modularized. The creating step can include the steps of extracting the at least one portion of the image identified to be modularized and generating at least one module from the extracted portion of the image. The modules that are created in accordance with the present invention can be formatted for use in a new image or part of a new image to be used with a software program such as with a hardware-independent imaging tool.
    Type: Grant
    Filed: August 18, 2003
    Date of Patent: March 11, 2008
    Assignee: Lenovo (Singapore) Pte. Ltd.
    Inventors: Neal R. Caliendo, Jr., Jeffrey M. Estroff, Michaelle L. Fuccella-Walcutt, James A. Hunt, Howard J. Locker, John C. Mese, Joshua N. Novak, Jose R. Ruiz, Rod D. W. Waltermann, Arnold Weksler
  • Patent number: 7340729
    Abstract: An article of manufacture and a method includes providing a system having an interface, dividing the interface into levels, associating a dependency list with a level, associating a client with the dependency list, and marking the clients associated with a dependency list for recompilation based on a change to a global component.
    Type: Grant
    Filed: October 28, 2003
    Date of Patent: March 4, 2008
    Assignee: SAP AG
    Inventors: Andreas Simon Schmitt, Andreas Blumenthal, Helmut Prestel, Frank Bertelsmeier
  • Patent number: 7337432
    Abstract: A system and method are provided for generating automatic test plans for GUI applications. The method comprises: launching a GUI application under test (AUT); discovering access paths to user interface (UI) elements in the AUT; generating logical access paths to the discovered UI elements; launching a test plan that uses the generated access paths; and, sending test messages to UI elements in the AUT. The method may identify UI element types such as a menu, sub-menu, check box, text box, or variable UI elements. Then, sending test messages to UI elements in the AUT includes sending corresponding test messages such as menu select, sub-menu select, check box select, text box fill, or variable fill command messages. For example, if a variable UI element is identified, sending test messages to UI elements in the AUT includes: sending a command to populate the variable UI elements; and, selecting the populated value.
    Type: Grant
    Filed: February 3, 2004
    Date of Patent: February 26, 2008
    Assignee: Sharp Laboratories of America, Inc.
    Inventors: Sridhar Dathathraya, Mark Liu Stevens
  • Patent number: 7331047
    Abstract: Software running on a desktop device determines whether or not binaries (executables) need to be pushed to a remote device. If binaries need to be pushed to the remote device, the desktop determines which particular binaries need to be pushed to the remote device, and pushes the needed binaries to the remote device. Once all needed binaries are loaded onto the remote device, functions on the remote device can be executed via remote procedure calls.
    Type: Grant
    Filed: November 25, 2003
    Date of Patent: February 12, 2008
    Assignee: Microsoft Corporation
    Inventors: George Chu, Timothy Y. Ng
  • Patent number: 7328433
    Abstract: Methods and apparatus for reducing memory latency in a software application are disclosed. A disclosed system uses one or more helper threads to prefetch variables for a main thread to reduce performance bottlenecks due to memory latency and/or a cache miss. A performance analysis tool is used to profile the software application's resource usage and identifies areas in the software application experiencing performance bottlenecks. Compiler-runtime instructions are generated into the software application to create and manage the helper thread. The helper thread prefetches data in the identified areas of the software application experiencing performance bottlenecks. A counting mechanism is inserted into the helper thread and a counting mechanism is inserted into the main thread to coordinate the execution of the helper thread with the main thread and to help ensure the prefetched data is not removed from the cache before the main thread is able to take advantage of the prefetched data.
    Type: Grant
    Filed: October 2, 2003
    Date of Patent: February 5, 2008
    Assignee: Intel Corporation
    Inventors: Xinmin Tian, Shih-wei Liao, Hong Wang, Milind Girkar, John Shen, Perry Wang, Grant Haab, Gerolf Hoflehner, Daniel Lavery, Hideki Saito, Sanjiv Shah, Dongkeun Kim
  • Patent number: 7322023
    Abstract: An intelligent real time tool to assist a computer programmer during the writing and/or maintenance of a computer program. The tool generates assist windows that contain program related information that the programmer can use to construct a programming language statement and/or to obtain real time information about a programming language statement. An assist window can be automatically displayed as determined by the tool itself, and/or manually displayed on demand in response to a user input command. An assist window displays two general categories of information including but not limited to selection menu information based on a partial compilation of all programming language statements, and informational displays based on a partial compilation and a reverse parse of an immediate programming language statement. The statement generating tool assist windows are non-intrusive to programmer input and can be ignored by the programmer by merely continuing to type.
    Type: Grant
    Filed: October 3, 2001
    Date of Patent: January 22, 2008
    Assignee: Microsoft Corporation
    Inventors: Matthew Shulman, Matthew James Curland, Martin Cibulka, David Anthony Sobeski
  • Patent number: 7318226
    Abstract: A method, apparatus, and computer instructions for managing software. A solution to a problem that has occurred with a program on a client data processing system is received by a server. This solution is created while solving the problem that occurred on the data processing system. The solution includes a process that may be executed on another data processing system to solve the same problem on that data processing system. The process is, for example, a script, a macro, or a set of computer executable steps or instructions. A database of solutions is selectively updated to reflect the new solution. In response to a request for a solution by another client system to a problem, the server will respond with the current solution that exists in the database.
    Type: Grant
    Filed: October 16, 2003
    Date of Patent: January 8, 2008
    Assignee: International Business Machines Corporation
    Inventors: Thomas E. Chefalas, Steven J. Mastrianni
  • Patent number: 7318222
    Abstract: In a method for execution control acquisition of a program, during the execution of the program, it is determined when a hardware performance counter has reached a threshold. When the threshold is reached, execution control is switched to a dynamic optimizer. Thereafter, an optimized version of the program is executed. In a method for executing an optimized version of a program, during execution of the optimized version, an interrupt is received and execution control is returned to an operating system. An original version of the program is then executed. During the execution of the original version, a hardware performance counter is monitored. When the hardware performance counter reaches a threshold during the execution of the original version, execution control is switched to a dynamic optimizer. Thereafter, the execution of the optimized version of the program is continued as directed by the dynamic optimizer.
    Type: Grant
    Filed: August 27, 2003
    Date of Patent: January 8, 2008
    Assignee: Sun Microsystems, Inc.
    Inventor: Jan Civlin
  • Patent number: 7313792
    Abstract: A system and method for improved software servicing by installation of an updated version is provided. Using branch versioning techniques that support multi-branch development and release versioning techniques that support multi-version development, an update package may include updated files for each branch or release version. The least possible version from the update package may be installed to minimize the risk for potential software bugs introduced by the high frequency of changes made to a higher version. Additionally, any fix installed on a target machine running a particular version may be migrated when updating the target machine to a new version without losing the fix and regressing the change. Such an update may be uninstalled by reverse migration of any fixes before uninstalling files from the version update.
    Type: Grant
    Filed: September 8, 2003
    Date of Patent: December 25, 2007
    Assignee: Microsoft Corporation
    Inventors: Garret J. Buban, Kory V. Gill, Manojkumar Haridas Shende, James A. Holmes, Michael V. Sliger, William R. Tipton
  • Patent number: 7308681
    Abstract: A method and apparatus for creating a compressed trace for a program, wherein events are compressed separately to provide improved compression and tracing. A sequence of events for a program is selected, and a sequence of values is then determined for each of the selected events occurring during an execution of the program. Each sequence of values is then compressed to generate a compressed sequence of values for each event. These values are then ordered in accordance with information stored in selected events (such as for example, branch events), where the ordered values correspond to the trace.
    Type: Grant
    Filed: October 28, 2003
    Date of Patent: December 11, 2007
    Assignee: International Business Machines Corporation
    Inventors: Kattamuri Ekanadham, Pratap Pattnaik, Simone Sbaraglia, Luiz A. DeRose
  • Patent number: 7308683
    Abstract: An apparatus, program product and method utilize a heuristic-based algorithm such as simulated annealing to order program code segments in a computer memory to provide improved computer performance in terms of memory access, e.g., by minimizing cache misses or other memory-related performance penalties that may be present in a multi-level memory architecture. Program code is ordered in a computer memory by selecting an ordering from among a plurality of orderings for a plurality of program code segments using a heuristic algorithm, and ordering the plurality of program code segments in a memory of a computer using the selected ordering.
    Type: Grant
    Filed: October 30, 2003
    Date of Patent: December 11, 2007
    Assignee: International Business Machines Corporation
    Inventor: Ross E. Johnson
  • Patent number: 7308674
    Abstract: A system and method for implementing a data-flow based system includes three basic components: a data-flow based scheduling environment that balances the needs of data initiated program execution as a result of flows with other practical considerations such as user responsiveness, event driven invocation, user interface considerations, and the need to also support control-flow based paradigms where required; a visual programming language, based on the flow of strongly-typed run-time accessible data and data collections between small control-flow based locally and network distributed functional building-blocks, known as widgets; and a formalized pin-based interface to allow access to data-flow contents from the executing code within the widgets. The pins on the widgets include both pins used to control execution of a widget as well as pins used to receive data input from a data flow.
    Type: Grant
    Filed: February 3, 2003
    Date of Patent: December 11, 2007
    Inventor: John Fairweather
  • Patent number: 7305654
    Abstract: A test schedule estimator for performing fixes on released software. In a preferred embodiment, historic data from similar builds are used with other data to estimate a time required to perform testing and release based on the number of fixes implemented.
    Type: Grant
    Filed: September 19, 2003
    Date of Patent: December 4, 2007
    Assignee: LSI Corporation
    Inventors: Madhu C. Patel, William W. Ecton
  • Patent number: 7305671
    Abstract: An infrastructure is provided for creating applications for mobile information devices, using a tag-based markup language. Developers can use the markup language to define applications and content based on easily manipulated textual tags, rather than having to write specific source code. A compiler, processes the tags in several phases. In one phase, a hierarchical object model of the application is populated with objects. Then, in another phase, a generator traverses the object model hierarchy in a top-down manner, producing source code files corresponding to objects in the object model. The code files may include various elements, for example screens, forms, and servlets. For each element required to be generated, an appropriately configured generator class is invoked. The output code can be Java source code.
    Type: Grant
    Filed: January 23, 2003
    Date of Patent: December 4, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Eran Davidov, Natan Linder, Eyal Toledano, Omer Pomerantz, Daniel Blaukopf
  • Patent number: 7302678
    Abstract: An application system includes a first process configured to execute an application program, wherein the application program is operable to use a set of data structures. The application system also includes a second process configured to interpret a markup language document. A transformation template is configured to specify a symmetric mapping between the markup language document and the set of data structures. A transformation virtual machine runs in association with the first process and is operable to execute the transformation template. The transformation virtual machine is operable to perform a symmetric transformation between the markup language document and the set of data structures to allow the first process and the second process to exchange information.
    Type: Grant
    Filed: September 10, 2003
    Date of Patent: November 27, 2007
    Assignee: SAP Aktiengesellschaft
    Inventors: Karsten K. Bohlmann, Andreas Blumenthal, Stefan O. Bresch, Christian Stork, Christoph H. K. Wedler, Volker Wiechers
  • Patent number: 7302674
    Abstract: An embodiment of the present invention is a technique to automate document review in a project management tool. The review information on a document review is stored in a repository. The document review is associated to a project in a project management system. The document review is processed using the review information. A notification of the document review is sent.
    Type: Grant
    Filed: August 6, 2003
    Date of Patent: November 27, 2007
    Assignee: Unisys Corporation
    Inventors: Ted Franklin Gladieux, Avinash Sadhu
  • Patent number: 7299451
    Abstract: A system and method for automated testing of software products for use in a multi-platform and multi-product environment. The system comprises a series of databases in combination with a kernel of executable code for automatically running the testing process and displaying the test results. The system can be accessed via a web browser user interface.
    Type: Grant
    Filed: January 24, 2002
    Date of Patent: November 20, 2007
    Assignee: International Business Machines Corporation
    Inventors: John G. Dygon, Hongcheng Mi, Jeremie Wood, Gary M. Wrayno
  • Patent number: 7299450
    Abstract: Carrying out maintaining a software configuration management system are disclosed. In particular, a way to reverse prior revisions without removing their history in the server are described. When a client submits an undo command to reverse the effects of one or more revisions within a stated revision range of a file, the revision history is updated by submitting a new revision that effectively removes the changes embodied within the range of undone revisions. Implementing undoing prior revisions preserves the revision history for a file, in case there is a need to access the undone revisions at a later time.
    Type: Grant
    Filed: June 17, 2003
    Date of Patent: November 20, 2007
    Assignee: Microsoft Corporation
    Inventors: Artem Y. Livshits, Christopher J. Antos
  • Patent number: 7299455
    Abstract: Computer software and hardware provide for remotely monitoring the execution of computer programs. Monitoring instructions are added to the computer program so that during execution of the program, data is collected regarding the program execution. The collected data may be automatically sent to a remote system or site for analysis. The monitoring instructions create little or no performance impact on the client yet provide valuable information to the developer of the program. Additionally, the monitoring instructions may be changed during computer program development.
    Type: Grant
    Filed: August 15, 2003
    Date of Patent: November 20, 2007
    Assignee: Cisco Technology, Inc.
    Inventors: Mark D. Anderson, Evan J. Bigall, Christine Clifford, Reed Hastings, Jon Sorensen, Douglas Pan
  • Patent number: 7293253
    Abstract: For a software application that uses a first interface, a method is provided to allow the migration of the software application to a second interface instead of the first interface. The software application may, in some situations, be migrated without having to modify the software application. The method involves the creation of a computer-readable mapping between the first interface and the second interface. The computer-readable mapping is then run through auto-generation software which automatically generates an interface wrapper. The interface wrapper can be used in a system to allow a legacy application to continue to use a legacy interface while a new application uses a new interface. The interface wrapper allows the software application to transparently communicate with the second interface. The details of the auto-generation software are also specified.
    Type: Grant
    Filed: September 12, 2003
    Date of Patent: November 6, 2007
    Assignee: Nortel Networks Limited
    Inventor: Martin Soukup