Patents by Inventor Jonathan J. Gibbons

Jonathan J. Gibbons has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 6412019
    Abstract: Methods and apparatus in an object oriented programming environment for invocation of objects with interface inheritance. An object reference using mtables contains two parts, more specifically, a pointer to the data for an object and a pointer to the methods on the object. The methods on the object are represented by a collection of mtables. An mtable for a given interface consists of pointers to mtables for inherited interfaces and pointers to functions implementing the operations declared in the interface. An mtable pointer in an object reference points to an mtable for an apparent interface of the object reference. Mtables for any inherited interfaces are reached by indirection from the mtables for the apparent interface.
    Type: Grant
    Filed: January 15, 1997
    Date of Patent: June 25, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Jonathan J. Gibbons, Graham Hamilton, Peter B. Kessler, Michael L. Powell, Sanjay R. Radia
  • Patent number: 6157961
    Abstract: The present invention provides an elegant and compact way to provide mechanisms for invocation of objects by client applications and for argument passing between client applications and object implementations, which reduce the memory space required for the client-side stubs, without the client application or the operating system knowing the details of how these mechanisms work. Moreover, these mechanisms function in a distributed computer environment with similar ease and efficiency, where client applications may be on one computer node and object implementations on another. Additionally the invention is independent of the particular C++ compiler used for generation of the stub code. The mechanism used to reduce this memory space comprises a stub generator (called "CONTOCC"), a data base of client-side stub description files and a stub-interpreter which knows how to read these client-side stub description files. CONTOCC reads interface definition language ("IDL") files and generates corresponding C++ files.
    Type: Grant
    Filed: July 16, 1997
    Date of Patent: December 5, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Peter B. Kessler, Graham Hamilton, Jonathan J. Gibbons
  • Patent number: 5787251
    Abstract: The present invention provides an elegant and simple way to provide mechanisms for invocation of objects by client applications and for argument passing between client applications and object implementations, without the client application or the operating system knowing the details of how these mechanisms work. Moreover, these mechanisms functions in a distributed computer environment with similar ease and efficiency, where client applications may be on one computer node and object implementations on another. The invention includes a new type of object, termed a "spring object," which includes a method table, a subcontract mechanism and a data structure which represents the subcontract's local private state.
    Type: Grant
    Filed: November 18, 1996
    Date of Patent: July 28, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Michael L. Powell, James G. Mitchell, Jonathan J. Gibbons
  • Patent number: 5761511
    Abstract: The present invention provides a system and process for making use of pre-existing data-structures which represent a computer program, in a way which has the advantages of shortening the time and cost required to create a new version of the computer program. The pre-existing data-structure is modified to produce a shadow data-structure which contains only shadows of those elements or nodes of the pre-existing data-structure required to perform the tasks of the new version of the computer program. The present invention includes processes to make the data-structure of the original program shadowable; processes to use data from the original program compilation process in compiling the new version of the program, including processes to create a shadow data-structure; and processes to use the new version of the computer program along with the shadow data-structure to create the desired execution.
    Type: Grant
    Filed: January 28, 1994
    Date of Patent: June 2, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Jonathan J. Gibbons, Michael J. Day, Theodore C. Goldstein, Michael J. Jordan
  • Patent number: 5577251
    Abstract: The present invention provides an elegant and simple way to provide mechanisms for invocation of objects by client applications and for argument passing between client applications and object implementations, without the client application or the operating system knowing the details of how these mechanisms work. Moreover, these mechanisms functions in a distributed computer environment with similar ease and efficiency, where client applications may be on one computer node and object implementations on another.The invention includes a new type of object, termed a "spring object," which includes a method table, a subcontract mechanism and a data structure which represents the subcontract's local private state.
    Type: Grant
    Filed: November 7, 1995
    Date of Patent: November 19, 1996
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Michael L. Powell, James G. Mitchell, Jonathan J. Gibbons