Patents Examined by Trent J Roche
  • Patent number: 7331034
    Abstract: A tool for distributed software development maintains a pool of software modules. A module manager manages submissions to and downloads from the pool. The module manager can be a computer system with programming and resources suited for managing the pool. Developers and users can access the module manager via a computer network such as the internet, or via other transmission mechanisms. A developer intending to submit a module to the pool can specify access conditions associated with the module, and transmit information needed to access the module. The module manager can add the access information and access conditions to the pool. A developer or user intending to access a module from the pool can identify a desired module. The module manager can then determine if the intended access complies with the access conditions associated with the desired module. If it does, then the module manager can transmit the access information.
    Type: Grant
    Filed: January 9, 2001
    Date of Patent: February 12, 2008
    Inventor: Thomas G. Anderson
  • Patent number: 6957426
    Abstract: Independent tool integration uses existing mechanisms, software distributor (SD) commands and a common file directory, to integrate software products without the need to inform the base product beforehand about the new product's software tool definition. The software products may also be automatically updated without the base product having to change.
    Type: Grant
    Filed: April 5, 2001
    Date of Patent: October 18, 2005
    Assignee: Hewlett-Packard Development Company L.P.
    Inventors: Carlos Alberto Bonilla, Terence E. Lister, George Williams, Jr., Humberto A Sanchez, II
  • Patent number: 6954930
    Abstract: Methods, systems, and computer program products for improving installation of software packages by performing dynamic, remote validation of various installation data before building an installation image. The remote validation occurs in the target environment, such that the values for various installation parameters can be analyzed in the context of that target environment. Creation and distribution of the installation package can then be suppressed until the configuration parameters have acceptable values. This immediate feedback approach allows for a more efficient installation process. In preferred embodiments, structured markup language syntax is used to specify which configuration values are subject to remote validation.
    Type: Grant
    Filed: February 19, 2002
    Date of Patent: October 11, 2005
    Assignee: International Business Machines Corporation
    Inventors: Daniel R. Drake, Robert C. Sizemore
  • Patent number: 6948151
    Abstract: A system and method for dynamically packaging component objects. A server receives a request from a client. The server identifies one or more objects based on the request. The identified objects may be copied from the server's nonvolatile storage area, generated dynamically, or be a result of modifying objects stored on the server's nonvolatile storage area. The identified objects are written to a package file. The server downloads the package file to the client. A dialog may be sent to the client to determine whether the client wishes to download the package file. The package file is provided dynamically in response to the client's request. The package file may include objects that include generated code, such as Java tag handler files, Java tag extra info files, and Java tag library description information. Java definitions may be included with the package file to create a Java jar file.
    Type: Grant
    Filed: June 29, 2001
    Date of Patent: September 20, 2005
    Assignee: International Business Machines Corporation
    Inventor: Christopher Henry Gerken
  • Patent number: 6941547
    Abstract: Apparatus and method for porting applications to different platforms. The apparatus and method use a mapping table function that receives source filenames and directory structures and maps them to filenames and directory structures appropriate for a target platform. In a preferred embodiment, the apparatus and method map flexible filenames and directory structures, such as is found with the Unix filesystem, to more restrictive filenames and directory structures, such as is found with the OS/400 filesystem. In this way, an application developer may make use of the more flexible filesystem of conventions such as Unix, when developing application files and use the apparatus and method to automatically handle converting these more flexible filenames and directory structures to the more restrictive filenames and directory structures of platforms to which the application is to be ported.
    Type: Grant
    Filed: June 25, 2001
    Date of Patent: September 6, 2005
    Assignee: International Business Machines Corporation
    Inventor: Aldo Alejandro Duran
  • Patent number: 6934943
    Abstract: Method and apparatus for optimization of an executable program that calls procedures in a shared library. Code segments that read procedure address information from a linkage table are first identified. Each linkage code segment is associated with a call to a procedure in the shared library, and the address information in the linkage table is associated with the procedures in the shared library. During program execution, the address information is read from the linkage table and substitute code segments are generated for the linkage code segments. Each substitute code segment has direct loads of the address information for calling the associated procedure instead of the original references to the linkage table. Thereafter, the substitute code segments are executed instead of the linkage code segments.
    Type: Grant
    Filed: October 18, 2001
    Date of Patent: August 23, 2005
    Assignee: Hewlett-Packard Development Company
    Inventors: Robert Hundt, Tom Lofgren, Vinodha Ramasamy
  • Patent number: 6928644
    Abstract: The present invention is directed to a method of building a custom software configuration, which may include receiving a first customer order for a first information handling system and a second customer order for a second information handling system. The first customer order including a first list of hardware configuration components and a first list of software configuration components and the second customer order including second list of hardware configuration components and a second list of software configuration components. At least one of the first list of hardware configuration components is different from the second list of hardware configuration components and the first list of software configuration components is different from the second list of software configuration components.
    Type: Grant
    Filed: January 4, 2001
    Date of Patent: August 9, 2005
    Assignee: Gateway Inc.
    Inventors: James L. Kroening, Darrin J. Fangman, James Marshall, Richard Peasley
  • Patent number: 6925633
    Abstract: According to the invention, systems, and methods are disclosed for testing of a first program is provided. First, an input file containing a location of a first program, identifiers of other programs to be invoked by the first program, and arguments to be passed to the other programs is read. Next, the first program is executed including invoking the other programs and passing to those programs the arguments specified. Finally, log files are generated based on results of execution of the first program and the other programs.
    Type: Grant
    Filed: May 30, 2000
    Date of Patent: August 2, 2005
    Assignee: Aspect Communications Corporation
    Inventors: Gary Barnett, Vaishali Ghanwat
  • Patent number: 6922829
    Abstract: A method of generating profiled optimized code using user interface (17) that allows a user to visually understand, inspect, and manipulate a compiled application program as a function of compiler options, such as, code size and speed, is provided. A program (11) is compiled in a compiler (13) with two or more compiler options such as size and speed and the resulting executables (14) are profiled (15). The results of the profiles (19) are analyed in a solver (21) for generating sets of useful solutions (23) wherein the sets have methods of compiling at the function level. The useful solutions (23) are displayed (18) at the user interface (17) to allow the user to visually understand, inspect and manipulate compiler options to select compiler options (13a) for the program.
    Type: Grant
    Filed: January 17, 2001
    Date of Patent: July 26, 2005
    Assignee: Texas Instruments Incorporated
    Inventors: Alan S. Ward, Reid E. Tatge, Jonathan F. Humphreys, David H. Bartley, Paul C. Fuqua
  • Patent number: 6918113
    Abstract: A client installation and execution system for streamed applications requires the user or administrator to obtain a subscription to the streamed application program from a subscription server before installation of the streamed application program begins. The client then obtains an encrypted access token for the streamed application program from a license server upon acknowledgment of a valid license, receives an installation information block from the server, and installs the proper icons, aliases, and description onto the client that give the user the proper look and feel of the original application program. A file spoofer is installed on the client that redirects file accesses from the client's local file system to the streaming server's file system. A registry spoofer is provided on the client for intercepting all registry calls on the client and redirecting calls that manipulate certain registries to an alternate path specified in a registry database on the client.
    Type: Grant
    Filed: April 5, 2001
    Date of Patent: July 12, 2005
    Assignee: Endeavors Technology, Inc.
    Inventors: Amit Patel, Sanjay Pujare, Nicholas Ryan, David Lin
  • Patent number: 6918112
    Abstract: An interface is provided for identifying which components a user desires to install on one or more computers. An installation procedure is determined based on dependency requirements for components that are selected for installation. The installation procedure may describe a desired order and/or sequence for installing selected application and/or service components.
    Type: Grant
    Filed: November 29, 2000
    Date of Patent: July 12, 2005
    Assignee: Microsoft Corporation
    Inventors: Erin M. Bourke-Dunphy, Jeff A. Zimniewicz
  • Patent number: 6912708
    Abstract: One embodiment of the present invention provides a system that facilitates debugging a platform-independent virtual machine. The system operates by providing an agent on the platform-independent virtual machine, which provides a set of functions for accessing variables in the platform-independent virtual machine. The platform-independent virtual machine is adapted to call the set of functions within the agent. Next, the agent examines the current state of the variables in the platform-independent virtual machine. The agent communicates the current state of the variables to a host machine. An operator of the host machine can then analyze the current state of the variables.
    Type: Grant
    Filed: June 28, 2001
    Date of Patent: June 28, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: David Wallman, Stepan Sokolov
  • Patent number: 6901583
    Abstract: A method and a apparatus for testing a software emulator while executing the software emulator on a target machine architecture are disclosed. The method may include the steps of executing a test program on a target machine architecture, with a test program producing a first output, executing an emulator on the target machine architecture, and the emulator executing the test program under emulation, with the test program producing a second output.
    Type: Grant
    Filed: July 19, 2001
    Date of Patent: May 31, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Collin Y. Park
  • Patent number: 6820256
    Abstract: Defect detection in a software system made of multiple computer program programs is facilitated by using information about cross-program interactions and dependency relationships between programs to analyze the individual programs in such a way that the behavior of the system as a whole is accurately represented. A list of dependency relationships is read in; these dependency relationships are used to determine an order in which the programs should be analyzed. The programs are then analyzed in that order. Information from the analysis of the programs is used to inform the analysis of subsequently-analyzed programs.
    Type: Grant
    Filed: December 13, 2000
    Date of Patent: November 16, 2004
    Assignee: Microsoft Corporation
    Inventors: Timothy G. Fleehart, Jonathan D. Pincus, Jeffrey S. Wallace
  • Patent number: 6810517
    Abstract: A utility program develops and updates an API-translation layer of an emulator for running programs written for one platform on another platform. The utility builds a module for each API from a set of templates to execute the API's function on the other platform. Generalized function templates iterates through API functions. Exception templates can override the generalized templates in specific cases. Types templates convert individual arguments of the API. Code templates contain code for incorporation into a number of other templates.
    Type: Grant
    Filed: February 22, 2001
    Date of Patent: October 26, 2004
    Assignee: Microsoft Corporation
    Inventors: Barry Bond, Ori Gershony, David E. Hastings, Jonathan C. Lew, Alan M. Warwick
  • Patent number: 6795964
    Abstract: Method and apparatus for profiling edges that pass through stub code segments in executable program code. The compilation and linking of a computer program sometimes generates stub code segments that implement the transfer of control to functions that are external to a local segment of code. Branches through the stub code segments hinder the analysis of edges relative to the source code. In various embodiments of the invention, edges are created to represent respective branch instructions in the executable program code. Each edge has a source attribute, a target attribute, and an edge-taken count attribute. During execution, the numbers of times edges are taken are counted, and stub entry points and stub targets are identified. For each edge having a target that matches an entry point of a stub code segment, the edge target is changed to the stub target associated with the matching entry point.
    Type: Grant
    Filed: June 18, 2001
    Date of Patent: September 21, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Vinodha Ramasamy, Robert Hundt
  • Patent number: 6751791
    Abstract: A method is disclosed for optimizing an MPI procedure by altering to a procedure other than the MPI procedure invocation portion or by altering the execution sequence. In this method of optimizing a program that uses MPI during compiling, optimization of an MPI procedure is realized by detecting an MPI procedure invocation portion within a received source program, and then altering the MPI procedure invocation portion to a procedure other than the detected MPI procedure invocation portion or by altering the execution sequence.
    Type: Grant
    Filed: December 19, 2000
    Date of Patent: June 15, 2004
    Assignee: NEC Corporation
    Inventor: Masaru Inaba