Patents by Inventor Graham Hamilton

Graham Hamilton 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: 6697848
    Abstract: A method for enabling an application program to communicate with a network server, includes the steps of downloading a document from a document server to the application program, downloading code from a code server associated with the document server to the application program, the code including a network protocol handler for the network server, and using the network protocol handler to communicate with the network server.
    Type: Grant
    Filed: September 14, 1999
    Date of Patent: February 24, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Peter B. Kessler, Jeffrey Donald Nisewanger, Sami Shaio, Jacob Y. Levy, Steven Robert Kleiman
  • Patent number: 6668371
    Abstract: Methods, software, and apparatus for analyzing a software component within an application builder tool are disclosed. The present invention relates, in one aspect, to a method for analyzing a software component that can be visually moved within an application builder tool running on a computer. The method involves obtaining the software component to be analyzed and determining if the software component has an associated information class. When it is determined that the software component has an associated information class, the information class is queried about information stored within the information class, otherwise automatic analysis using design patterns is applied to analyze the class. In one embodiment, the information stored within the information class relates to methods, properties, and/or events.
    Type: Grant
    Filed: December 21, 2000
    Date of Patent: December 23, 2003
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Laurence P. G. Cable
  • Publication number: 20030065750
    Abstract: A method for enabling an application program to communicate with a network server, includes the steps of downloading a document from a document server to the application program, downloading code from a code server associated with the document server to the application program, the code including a network protocol handler for the network server, and using the network protocol handler to communicate with the network server.
    Type: Application
    Filed: September 14, 1999
    Publication date: April 3, 2003
    Inventors: GRAHAM HAMILTON, PETER B. KESSLER, JEFFREY DONALD NISEWANGER, SAMI SHAIO, JAQCOB Y. LEVY, STEVEN ROBERT KLEIMAN
  • Patent number: 6526494
    Abstract: A computer-implemented method and apparatus in a computer system for inter-process communication. A first procedure allocates a first buffer in a first memory space shared by the first procedure (e.g. a client process) and a second procedure (e.g. a kernel or server process). The first procedure then marshals arguments for communicating with the second procedure in the first buffer. The first procedure indicates that a message for the second procedure is being passed and passes a first reference to the first buffer in the first memory space to the second procedure. The second procedure detects the indication of the message by the first procedure. The second procedure then references the first buffer and copies the arguments contained in the first buffer into a temporary buffer. The second procedure can then deallocate the first buffer.
    Type: Grant
    Filed: March 10, 2000
    Date of Patent: February 25, 2003
    Assignee: Sun Microsystems, Inc.
    Inventors: Panagiotis Kougiiouris, Graham Hamilton
  • 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: 6324637
    Abstract: A method of loading objects from primary memory includes the step of creating hash values for listed objects to create a hash index specifying a set of hash values. The hash index is loaded into primary memory to form a primary memory hashed index object directory. A calculated hash value is derived for an invoked object. The calculated hash value is matched with a hash value in the primary memory hashed index object directory. In response to this matching operation, an object corresponding to the calculated hash value is loaded into primary memory.
    Type: Grant
    Filed: August 13, 1999
    Date of Patent: November 27, 2001
    Assignee: Sun Microsystems, Inc.
    Inventor: Graham Hamilton
  • Publication number: 20010001882
    Abstract: Methods, software, and apparatus for analyzing a software component within an application builder tool are disclosed. The present invention relates, in one aspect, to a method for analyzing a software component that can be visually moved within an application builder tool running on a computer. The method involves obtaining the software component to be analyzed and determining if the software component has an associated information class. When it is determined that the software component has an associated information class, the information class is queried about information stored within the information class, otherwise automatic analysis using design patterns is applied to analyze the class. In one embodiment, the information stored within the information class relates to methods, properties, and/or events.
    Type: Application
    Filed: December 21, 2000
    Publication date: May 24, 2001
    Inventors: Graham Hamilton, Laurence P.G. Cable
  • Patent number: 6209125
    Abstract: Methods, software, and apparatus for analyzing a software component within an application builder tool are disclosed. The present invention relates, in one aspect, to a method for analyzing a software component that can be visually moved within an application builder tool running on a computer. The method involves obtaining the software component to be analyzed and determining if the software component has an associated information class. When it is determined that the software component has an associated information class, the information class is queried about information stored within the information class, otherwise automatic analysis using design patterns is applied to analyze the class. In one embodiment, the information stored within the information class relates to methods, properties, and/or events.
    Type: Grant
    Filed: June 3, 1997
    Date of Patent: March 27, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Laurence P. G. Cable
  • Patent number: 6170018
    Abstract: Doors are implemented in an existing operating system by using a novel adaptation of existing data structures and procedures which represent and control data files of the operating system. A door is represented by a file descriptor and is managed by existing mechanisms of an operating system, such as the Unix operating system, which are also used to manage files. A door is represented by a door node, which is a novel extension of the conventional vnode structure which in turn is used in conventional operating systems to represent the state of a computer resource, e.g., a data file. A door node is adapted such that most conventional file access and control procedures, e.g., procedures open( ) and close( ), can be used to access and control door with minimal adaptation.
    Type: Grant
    Filed: November 27, 1995
    Date of Patent: January 2, 2001
    Assignee: Sun MicroSystems, Inc.
    Inventors: James J. Voll, Graham Hamilton, Panagiotis Kougiouris, Steven R. Kleiman
  • 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: 6131126
    Abstract: A computer-implemented method and apparatus in a computer system for inter-process communication. A first procedure allocates a first buffer in a first memory space shared by the first procedure (e.g. a client process) and a second procedure (e.g. a kernel or server process). The first procedure then marshals arguments for communicating with the second procedure in the first buffer. The first procedure indicates that a message for the second procedure is being passed and passes a first reference to the first buffer in the first memory space to the second procedure. The second procedure detects the indication of the message by the first procedure. The second procedure then references the first buffer and copies the arguments contained in the first buffer into a temporary buffer. The second procedure can then deallocate the first buffer.
    Type: Grant
    Filed: January 27, 1998
    Date of Patent: October 10, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Panagiotis Kougiouris, Graham Hamilton
  • Patent number: 6009464
    Abstract: A method for enabling an application program to communicate with a network server, includes the steps of downloading a document from a document server to the application program, downloading code from a code server associated with the document server to the application program, the code including a network protocol handler for the network server, and using the network protocol handler to communicate with the network server.
    Type: Grant
    Filed: October 16, 1995
    Date of Patent: December 28, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Peter B. Kessler, Jeffrey Donald Nisewanger, Sami Shaio, Jacob Y. Levy, Steven Robert Kleiman
  • Patent number: 5999988
    Abstract: The method and apparatus for generating and employing a run-time generated stub to reference an object in an object oriented system. This method and apparatus represents in a first virtual machine a remote object implemented in a second virtual machine by employing a stub class. An object reference is sent by the second virtual machine and received by the first virtual machine. The object reference includes an interface descriptor that identifies the interface(s) of the remote object and an object handle that identifies the remote object. At run-time, the information associated with the remote object is transformed into a stub class that represents the remote object and implements only those interfaces identified by the interface descriptor and also defined by the first virtual machine. After the stub class is created, an instance of that stub class is generated and provided to the first virtual machine.
    Type: Grant
    Filed: March 31, 1997
    Date of Patent: December 7, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Eduardo Pelegri-Llopart, Graham Hamilton, Peter B. Kessler, James H. Waldo, Roger Riggs, Ann M. Wollrath
  • Patent number: 5991534
    Abstract: Methods, software, and apparatus for customizing a component for use with an application builder tool are disclosed. A method for customizing a component which has at least one associated property with an associated data type involves obtaining the component, obtaining an editor that is arranged to modify the property, and adding the editor to a customizer that is associated with said component. Then, the property is modified using the editor. In one embodiment, the method further includes configuring the component by implementing the modified property. In another embodiment, the component is an instance of an associated component class, and obtaining the component involves obtaining the component class and creating the instance of the component class. In such an embodiment, each property associated with the component is identified.
    Type: Grant
    Filed: June 3, 1997
    Date of Patent: November 23, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Laurence P. G. Cable
  • Patent number: 5991763
    Abstract: Methods, systems, and software for efficiently creating virtual file systems including object files which contain data are described. In one aspect of the invention, a method for creating a virtual file system includes retrieving a data file from a file system. A snapshot of the data file is created and converted into an object data file. The converted object data file is linked to at least one other object file. The data file can be concatenated with at least one other data file to create the snapshot. A set of assembly instructions for creating an object file from the snapshot is generated. The assembly instructions include instructions to reserve space within the object file for data contained in the data file. The assembly instructions are converted into an object file and the snapshot of the data file is copied into the reserved space.
    Type: Grant
    Filed: October 21, 1997
    Date of Patent: November 23, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Dean R. E. Long, Graham Hamilton, Nedim Fresko
  • Patent number: 5950001
    Abstract: The present invention provides efficient methods, apparatuses, and products for customizing software components intended for use in application builder tools. In accordance with one aspect of the present invention, a method of customizing a component which has at least one associated property involves obtaining the component and then identifying a customizer that is arranged to be associated with the component. Such a customizer is further arranged to guide a user through the configuration of the component.
    Type: Grant
    Filed: June 3, 1997
    Date of Patent: September 7, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Laurence P. G. Cable
  • Patent number: 5935242
    Abstract: A system is provided for rebooting a computer having a volatile memory device capable of storing operating information. The system reboots the computer using the operating information stored in the memory device if the memory device contains a valid copy of the operating information. The computer reboots the computer by reloading the operating information into the memory device if the memory device does not contain a valid copy of the operating information. The system determines whether the memory device contains a valid copy of the operating information by calculating a checksum for the operating information stored in the memory device and compares the checksum to a previously calculated checksum.
    Type: Grant
    Filed: October 28, 1996
    Date of Patent: August 10, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Peter W. Madany, Graham Hamilton, Alan G. Bishop
  • Patent number: 5881286
    Abstract: A computer-implemented method and apparatus in a computer system for inter-process communication. A first procedure allocates a first buffer in a first memory space shared by the first procedure (e.g. a client process) and a second procedure (e.g. a kernel or server process). The first procedure then marshals arguments for communicating with the second procedure in the first buffer. The first procedure indicates that a message for the second procedure is being passed and passes a first reference to the first buffer in the first memory space to the second procedure. The second procedure detects the indication of the message by the first procedure. The second procedure then references the first buffer and copies the arguments contained in the first buffer into a temporary buffer. The second procedure can then deallocate the first buffer.
    Type: Grant
    Filed: February 12, 1997
    Date of Patent: March 9, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Panagiotis Kougiouris, Graham Hamilton
  • Patent number: 5852722
    Abstract: A distributed computer network comprising of unconfigured network home client computers, and at least one autoconfiguration server. The network may also include sales servers and local service provider servers. The home network client computer determines on power on time if it possesses the requisite configuration information. If the requisite configuration information is lacking, the home network client computer sends a configuration request along with client computer identifying information to the autoconfiguration server. On receiving the configuration request from a home network client computer, the autoconfiguration server uses the client identifying information to determine the local service provider information and client computer specific data. The autoconfiguration server determines the local service provider information by looking up a directory of local service providers, the directory being stored on the autoconfiguration server or on some local service provider server.
    Type: Grant
    Filed: December 8, 1997
    Date of Patent: December 22, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: Graham Hamilton
  • Patent number: 5826082
    Abstract: A method for managing resources in a computer system. According to one embodiment of the invention, a resource manager receives a first request of a first operation. The first request identifies a first resource and specifies an amount of the first resource needed to execute the first operation. In response, a resource manager determines if the amount of the first resource requested by the first request is available to be reserved. In response to the amount of the first resource requested by the first request being available to be reserved, the resource manager reserves the amount of the first resource requested by the first request in advance of allocating the first resource to the first operation.
    Type: Grant
    Filed: July 1, 1996
    Date of Patent: October 20, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Alan Bishop, Graham Hamilton, Theron Tock