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: 6697848Abstract: 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: GrantFiled: September 14, 1999Date of Patent: February 24, 2004Assignee: Sun Microsystems, Inc.Inventors: Graham Hamilton, Peter B. Kessler, Jeffrey Donald Nisewanger, Sami Shaio, Jacob Y. Levy, Steven Robert Kleiman
-
Patent number: 6668371Abstract: 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: GrantFiled: December 21, 2000Date of Patent: December 23, 2003Assignee: Sun Microsystems, Inc.Inventors: Graham Hamilton, Laurence P. G. Cable
-
Publication number: 20030065750Abstract: 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: ApplicationFiled: September 14, 1999Publication date: April 3, 2003Inventors: GRAHAM HAMILTON, PETER B. KESSLER, JEFFREY DONALD NISEWANGER, SAMI SHAIO, JAQCOB Y. LEVY, STEVEN ROBERT KLEIMAN
-
Patent number: 6526494Abstract: 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: GrantFiled: March 10, 2000Date of Patent: February 25, 2003Assignee: Sun Microsystems, Inc.Inventors: Panagiotis Kougiiouris, Graham Hamilton
-
Patent number: 6412019Abstract: 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: GrantFiled: January 15, 1997Date of Patent: June 25, 2002Assignee: Sun Microsystems, Inc.Inventors: Jonathan J. Gibbons, Graham Hamilton, Peter B. Kessler, Michael L. Powell, Sanjay R. Radia
-
Patent number: 6324637Abstract: 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: GrantFiled: August 13, 1999Date of Patent: November 27, 2001Assignee: Sun Microsystems, Inc.Inventor: Graham Hamilton
-
Publication number: 20010001882Abstract: 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: ApplicationFiled: December 21, 2000Publication date: May 24, 2001Inventors: Graham Hamilton, Laurence P.G. Cable
-
Patent number: 6209125Abstract: 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: GrantFiled: June 3, 1997Date of Patent: March 27, 2001Assignee: Sun Microsystems, Inc.Inventors: Graham Hamilton, Laurence P. G. Cable
-
Patent number: 6170018Abstract: 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: GrantFiled: November 27, 1995Date of Patent: January 2, 2001Assignee: Sun MicroSystems, Inc.Inventors: James J. Voll, Graham Hamilton, Panagiotis Kougiouris, Steven R. Kleiman
-
Patent number: 6157961Abstract: 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: GrantFiled: July 16, 1997Date of Patent: December 5, 2000Assignee: Sun Microsystems, Inc.Inventors: Peter B. Kessler, Graham Hamilton, Jonathan J. Gibbons
-
Patent number: 6131126Abstract: 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: GrantFiled: January 27, 1998Date of Patent: October 10, 2000Assignee: Sun Microsystems, Inc.Inventors: Panagiotis Kougiouris, Graham Hamilton
-
Patent number: 6009464Abstract: 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: GrantFiled: October 16, 1995Date of Patent: December 28, 1999Assignee: Sun Microsystems, Inc.Inventors: Graham Hamilton, Peter B. Kessler, Jeffrey Donald Nisewanger, Sami Shaio, Jacob Y. Levy, Steven Robert Kleiman
-
Patent number: 5999988Abstract: 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: GrantFiled: March 31, 1997Date of Patent: December 7, 1999Assignee: Sun Microsystems, Inc.Inventors: Eduardo Pelegri-Llopart, Graham Hamilton, Peter B. Kessler, James H. Waldo, Roger Riggs, Ann M. Wollrath
-
Patent number: 5991534Abstract: 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: GrantFiled: June 3, 1997Date of Patent: November 23, 1999Assignee: Sun Microsystems, Inc.Inventors: Graham Hamilton, Laurence P. G. Cable
-
Patent number: 5991763Abstract: 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: GrantFiled: October 21, 1997Date of Patent: November 23, 1999Assignee: Sun Microsystems, Inc.Inventors: Dean R. E. Long, Graham Hamilton, Nedim Fresko
-
Patent number: 5950001Abstract: 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: GrantFiled: June 3, 1997Date of Patent: September 7, 1999Assignee: Sun Microsystems, Inc.Inventors: Graham Hamilton, Laurence P. G. Cable
-
Patent number: 5935242Abstract: 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: GrantFiled: October 28, 1996Date of Patent: August 10, 1999Assignee: Sun Microsystems, Inc.Inventors: Peter W. Madany, Graham Hamilton, Alan G. Bishop
-
Patent number: 5881286Abstract: 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: GrantFiled: February 12, 1997Date of Patent: March 9, 1999Assignee: Sun Microsystems, Inc.Inventors: Panagiotis Kougiouris, Graham Hamilton
-
Patent number: 5852722Abstract: 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: GrantFiled: December 8, 1997Date of Patent: December 22, 1998Assignee: Sun Microsystems, Inc.Inventor: Graham Hamilton
-
Patent number: 5826082Abstract: 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: GrantFiled: July 1, 1996Date of Patent: October 20, 1998Assignee: Sun Microsystems, Inc.Inventors: Alan Bishop, Graham Hamilton, Theron Tock