Patents Examined by Michael Yigdall
  • Patent number: 7506308
    Abstract: A development-oriented directory structure that can be used with an application server, and which solves a number of the problems associated with traditional Enterprise Archive (EAR) files. The directory structure comprises a source folder that stores source files for use with or as part of a software application; and an output folder that stores compiled files for use with or as part of the software application. The source folder and the output folder output folder form a split directory which is then used in deploying the software application.
    Type: Grant
    Filed: February 25, 2004
    Date of Patent: March 17, 2009
    Assignee: Bea Systems, Inc.
    Inventors: Rob Woollen, Mark Griffith
  • Patent number: 7392523
    Abstract: Systems and methods consistent with the present invention ensure software integrity by associating each software component to be included in a federation with a distinct unique identifier. A subset of the identifiers corresponding to any two software components should match for the federation to be accepted.
    Type: Grant
    Filed: June 1, 2004
    Date of Patent: June 24, 2008
    Assignee: Symantec Corporation
    Inventors: George Herbert Stahl, Malcolm Lockhart
  • Patent number: 7389492
    Abstract: Embodiments of the invention provide a dictionary, which may be modified by a developer, that provides a mapping of the generation routine to be performed and a pointer or identifier of the generator employed for the specified generation routine. As will be appreciated, embodiments of the invention may employ a dictionary which comprises a plurality of generation routine-code generator identity data pairs. A generator routine may be, for example, associated with the generation of source code associated with a particular object class, fields, methods, method bodies, procedures, comments, subroutines and the like. By modifying a generation routine-code generator identity data pair in a generator dictionary, a developer or user is able to modify the source code (e.g., the structure and/or content of the source) which is ultimately generated by the generator.
    Type: Grant
    Filed: March 12, 2001
    Date of Patent: June 17, 2008
    Assignee: International Business Machines Corporation
    Inventors: Kenneth A. Chupa, Timothy M. Francis, Steven F. Wasleski, L. Scott Rich
  • Patent number: 7373643
    Abstract: The present invention comprises apparatus, methods and articles of manufacture for transferring data, comprising one or more update files made available upon distribution media, such as a server, a hash of the update files made available upon the server, as well as versions of the update and hash files upon a target or client. The distribution media then transmits the hash to the target or client, the hashes are compared, and, if they do not match, the update files are downloaded for further review and updating, if desired. If updating is desired, an update mechanism will then edit and/or replace files, modules, data and/or byte sequences on the target, according to the preferred embodiments. Embodiments for various platforms, including Unix® and Windows® NT are disclosed.
    Type: Grant
    Filed: March 6, 2001
    Date of Patent: May 13, 2008
    Assignee: CyberSoft, Inc.
    Inventor: Peter V. Radatti
  • Patent number: 7370322
    Abstract: An invention is disclosed for performing online upgrades using a control module, executed as part of an application, that includes application-specific strategies for the application, yet can be coded using the JAVA programming language. An application is executed that includes an original service module and an original control module. The original control module includes application-specific policies for the application. To upgrade the application, an upgraded control module is generated. Then, the upgraded control module is used to create an upgraded service module. Both the upgraded control module and the upgraded service module can be generated using class files for the original modules, which are loaded from a system repository. In this manner, the original control module and the original service module are upgraded.
    Type: Grant
    Filed: April 11, 2001
    Date of Patent: May 6, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Vladimir Matena, Rahul Sharma, Masood Mortazavi, Sanjeev Krishnan
  • Patent number: 7346901
    Abstract: Efficient and flexible support for parametric polymorphism in a dynamic execution environment is provided. The addition of efficient parametric polymorphism in a dynamic execution environment expands the support of features of various source languages in intermediate language code. Dynamic allocation of typing context data and support tables at runtime optimizes memory requirements and performance in a dynamic execution environment. As typing-context-relevant-code-points are executed within the program, indices are assigned to these code points and indexed slots in appropriate typing context data structures are allocated. As a typing-context-relevant-code-point is executed within a typing context, the indexed slot within the associated typing context data structure is filled in with typing context data. Such populated slots may be reused in subsequent execution of the code point within the same typing context to avoid re-computing the typing context data.
    Type: Grant
    Filed: December 18, 2001
    Date of Patent: March 18, 2008
    Assignee: Microsoft Corporation
    Inventors: Donald Robert Syme, Andrew John Kennedy
  • Patent number: 7343589
    Abstract: A XLANG/s compiler recognizes a statement in XLANG/s code to make an assumption as to the success or failure of a specified transaction. The assignment states of variables are tracked and changes to such states are recorded. While processing XLANG/s code, the compiler determines whether the assignment state of a particular correlation, operation or the like is correct for the transaction being performed. If not, the compiler may generate an error message. Moreover, by using declarative assumptions such as if(succeeded(T)) or if(!succeeded(T)), definite-assignment analysis of shared state variables may cross transactional boundaries.
    Type: Grant
    Filed: June 18, 2003
    Date of Patent: March 11, 2008
    Assignee: Microsoft Corporation
    Inventors: Paul F. Ringseth, Donald James McCrady, Bimal Mehta, Paul Maybee
  • Patent number: 7343584
    Abstract: An automated heterogeneous configurator employs a technique by which the state of a context can be changed and restored automatically to facilitate the configuration of systems having components that span multiple contexts. The technique employs a high level constraint that is programmed into the component class of a model that requires a component object to determine the appropriate context for that object at the beginning of its installation within the configuration, and if the current state of the context is not that which is appropriate for the object component, the installation process for the component changes the state of the context to reflect that which is appropriate for the component. The most common context is the product line context, but any other context pertinent to the configuration of heterogeneous systems can be applied to this technique.
    Type: Grant
    Filed: October 16, 2001
    Date of Patent: March 11, 2008
    Assignee: Versata Development Group, Inc.
    Inventors: Kevin Richard Plain, Thomas John Rohloff
  • Patent number: 7340723
    Abstract: A method of mapping abstract identifier implementations organized into namespaces may be used by parties (e.g., software developers) to combine identifier implementations with maximum flexibility, producing high-performance abstract code tailored to different application requirements and host binding environments. By expressing a bound entity via a parenthetical construct, multiple different implementations of the same abstract identifier can be uniquely identified and coexist together within the same program. A similar technique can also be used to uniquely identify extensions to existing types and namespaces developed by external parties without causing binding name clashes.
    Type: Grant
    Filed: July 2, 2003
    Date of Patent: March 4, 2008
    Assignee: Scaleform Corporation
    Inventors: Michael Antonov, Brendan Iribe
  • Patent number: 7313790
    Abstract: Methods and apparatus for preserving precise exceptions in code reordering by using control speculation are disclosed. A disclosed system uses a control speculation module to reorder instructions within an application program and preserve precise exceptions. Instructions, excepting and non-excepting, can be reordered by the control speculation module if the instructions meet certain conditions. When an excepting instruction is reordered, a check instruction is inserted into the program execution path and a recovery block is generated. The check instruction determines if the reordered excepting instruction actually needs to generate an exception. The recovery block contains instructions to revert the effects of code reordering. If the check instruction detects the need for an exception, the recovery block is executed to restore the architectural state of the processor and the exception is handled.
    Type: Grant
    Filed: June 23, 2003
    Date of Patent: December 25, 2007
    Assignee: Intel Corporation
    Inventor: Dz-ching Ju
  • Patent number: 7308684
    Abstract: Historically, resources (e.g., dynamic link libraries) were organized based on factors including the expertise of development teams. Unfortunately, this creates shared resources of much greater functionality than required by any one client application. By reformulating shared resources according to nodes reachable by classified applications, reformulated resources reduce the over-inclusive nature of shared resources formed based on the expertise of development teams. Further, layering resources for lower order classified applications also reduces memory requirements.
    Type: Grant
    Filed: June 16, 2003
    Date of Patent: December 11, 2007
    Assignee: Microsoft Corporation
    Inventor: Hon Keat W. Chan
  • Patent number: 7305658
    Abstract: Systems and methods for activating a component in a computing system having a plurality of partitions. One method includes receiving a request to activate a component having an object class ID and a partition ID and detecting if the object class ID is contained within a default partition corresponding to the partition ID. If the object class ID is contained within the default partition, an instance of the component in the partition ID is activated. If the object class ID is not contained within the default partition, the method includes detecting if the object class ID is contained within a base partition. If the object class ID is contained in the base partition, an instance of the component in the base partition is activated.
    Type: Grant
    Filed: May 7, 2001
    Date of Patent: December 4, 2007
    Assignee: Microsoft Corporation
    Inventors: Keith S. Hamilton, Steve Jamieson
  • Patent number: 7287259
    Abstract: An infrastructure that allows applications to run with specified versions of dependent assemblies, wherein each assembly may exist and run side-by-side on the system with other versions of the same assembly being used by other applications. An application provides a manifest to specify any desired assembly versions on which it is dependent. Similarly, each assembly may have an assembly manifest that specifies the versions of assemblies on which it is dependent. During an initialization phase, an activation context is created for the application, based on the manifests, to map version independent names to a particular assembly version maintained on the system. While the application is in a running phase, for any globally named object that the application wants created, the activation context is accessed to locate the application's or assembly's manifest-specified version. The manifests and activation context constructed therefrom thus isolate an application from assembly version changes.
    Type: Grant
    Filed: April 24, 2001
    Date of Patent: October 23, 2007
    Assignee: Microsoft Corporation
    Inventors: Michael J. Grier, RoseMarie FitzSimons, David D'Souza, Peter Wilson, Srivatsan Parthasarathy, Sanjay G. Shenoy, Micheal Dunn
  • Patent number: 7278138
    Abstract: The present invention provides methods, apparatus, and systems to remove a redundant, sign extension instruction from a program and to improve the execution efficiency of the program. In an example embodiment, a conversion program for controlling a computer for the conversion of an execution program, especially a compiler, permits the computer to perform: a function for analyzing a sign extension instruction issued in order to perform the sign extension of a value defined in the execution program; and a function for, in accordance with analysis results, removing a predetermined sign extension instruction from those included in the execution program.
    Type: Grant
    Filed: March 19, 2002
    Date of Patent: October 2, 2007
    Assignee: International Business Machines Corporation
    Inventors: Motohiro Kawahito, Kideaki Komatsu
  • Patent number: 7257805
    Abstract: A debugger provides a user with the ability to trace through the user's program to detect one or more errors. The debugger steps through the program until it reaches a breakpoint set at a selected step by the user. After stepping through the program and detecting one or more errors, the user revises the program and re-executes the debugger. The debugger automatically restores the breakpoint to the selected step, which is often at a different line number in the program, after revisions are made to the program code.
    Type: Grant
    Filed: November 9, 2001
    Date of Patent: August 14, 2007
    Assignee: International Business Machines Corporation
    Inventor: Daniel S. Gritter
  • Patent number: 7225430
    Abstract: A method and apparatus for managing the use of a software code by a selected application program are disclosed. The method includes detecting an instance of using the code, identifying the application program that is using the code, confirming a conflict between the code and the application, and reporting the conflict to one or more selected parties. Confirmation of the conflict may occur by using a database whose content includes a plurality of selected application programs, along with a corresponding plurality of proper software codes, such as DLL files, which are appropriate for each of the selected application programs to use. A computer workstation or networked computer system may embody the method in the form of instructions stored in a machine-accessible medium.
    Type: Grant
    Filed: July 26, 2001
    Date of Patent: May 29, 2007
    Assignee: LANDesk Software Limited
    Inventors: David A. Eatough, James L. Sferas
  • Patent number: 7210133
    Abstract: A program storage medium storing an emulation system for performing dynamic real time translation of first program code written for the first programmable machine into second program code (target code) for running on a second programmable machine employing run time generation of an intermediate representation of the first program code. Upon first encountering a given portion of program code, only the target code necessary to execute that portion of program code under a prevailing set of entry conditions is initially generated and stored. When the same portion of program code is again encountered, a determination is made as to whether intermediate representation corresponding to a second subsequent set of conditions has been generated. If not, the target code necessary to execute the same portion of program code under that second set of conditions is generated.
    Type: Grant
    Filed: June 6, 2002
    Date of Patent: April 24, 2007
    Assignee: Transitive Limited
    Inventors: Jason Souloglou, Alasdair Rawsthorne
  • Patent number: 7203933
    Abstract: A method of dynamic real time translation of first program code written for a first programmable machine into second program code (target code) for running on a second programmable machine employing run time generation of an intermediate representation of the first program code. Upon first encountering a given portion of program code, only the target code necessary to execute that portion of program code under a prevailing set of entry conditions is initially generated and stored. When the same portion of program code is again encountered, a determination is made as to whether intermediate representation corresponding to a second subsequent set of conditions has been generated. If not, the target code necessary to execute the same portion of program code under that second set of conditions is generated.
    Type: Grant
    Filed: April 6, 2001
    Date of Patent: April 10, 2007
    Assignee: Transitive Limited
    Inventors: Jason Souloglou, Alasdair Rawsthorne
  • Patent number: 7203934
    Abstract: A combination of a first programmable machine and an emulation system operable to perform dynamic real time translation of first program code written for the first programmable machine into second program code (target code) for running on a second programmable machine employing run time generation of an intermediate representation of the first program code. Upon first encountering a given portion of program code, only the target code necessary to execute that portion of program code under a prevailing set of entry conditions is initially generated and stored. When the same portion of program code is again encountered, a determination is made as to whether intermediate representation corresponding to a second subsequent set of conditions has been generated. If not, the target code necessary to execute the same portion of program code under that second set of conditions is generated.
    Type: Grant
    Filed: June 6, 2002
    Date of Patent: April 10, 2007
    Assignee: Transitive Limited
    Inventors: Jason Souloglou, Alasdair Rawsthorne
  • Patent number: 7200845
    Abstract: A system and method updating firmware of cells in cellular, high availability, computing systems. One or more cells having missing, obsolete, corrupt, or otherwise errored firmware when compared to other cells in the partition are identified as mismatched cells. An update cell having desired firmware transmits an update message to each mismatched cell via a manageability system slow speed interconnect. In response to the update message, each mismatched cell enables a high speed interconnect over which they can receive the desired firmware. The update cell transmits the update firmware to each mismatched cell via the high speed interconnect.
    Type: Grant
    Filed: December 3, 2001
    Date of Patent: April 3, 2007
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: John A. Morrison, Michael S. Allison, Stephen J. Silva