Patents by Inventor James Gosling

James Gosling 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: 5886697
    Abstract: An intuitive graphical user interface is based upon a geographic map structure, and includes a system for controlling remote external electronic devices. In the defined graphical user interface, each space of the geographic map structure is rendered on a touch screen display as a graphic image of a geographic space. Within each space are colored cartoon-like icons called "objects" which can be selected and manipulated by the user. Certain objects, referred to as portals, transport the user from one space to another space when Selected. Other objects, referred to as buttons, perform associated actions or functions when Selected. The graphical user interface is displayed on a hand-held display device used to control remote devices. Each remote electronic device transmits a user interface program object that defines a graphical user interface to the display device.
    Type: Grant
    Filed: March 7, 1997
    Date of Patent: March 23, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Patrick J. Naughton, Charles H. Clanton, III, James A. Gosling, Chris Warth, Joseph M. Palrang, Edward H. Frank, David A. LaValle, R. Michael Sheridan
  • Patent number: 5815661
    Abstract: A class loader downloads objects and object viewers from remote computer nodes, and invokes locally stored object viewers to view objects. When a user selects an object to view, a conventional downloading of the referenced object is initiated. The class loader, however, utilizes data type information received at the beginning of the object downloading process to determine if a viewer for the referenced object is available on the user's workstation. If an appropriate view is not locally available, the class loader automatically locates an appropriate viewer on the server from which the object is being downloaded, or from any other appropriate server known to the user's workstation. The class loader downloads the located viewer and then invokes a program verification procedure to verify the integrity of the downloaded viewer before the viewer is executed.
    Type: Grant
    Filed: February 20, 1997
    Date of Patent: September 29, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: James A. Gosling
  • Patent number: 5778231
    Abstract: A program compiler identifies each symbol in a source program that references another program. For each identified symbol, the compiler determines whether the symbol is a reference to a remotely located file or to a locally stored file. If the identified symbol is a reference to a remotely located file, it constructs a file location identifier, such as a URL, for the identified symbol, performs a file location identifier based fetch of the remotely locate file, and ads at least a portion of the fetched file to a set of program code to be compiled if the fetch is successfully performed. If the identified symbol is a reference to a locally stored file, it performs a file fetch for the locally stored file, adding at least a portion of the fetched file to the set of program code to be compiled if the file fetch is successfully performed. If the fetch is unsuccessful, compilation of the source program is aborted.
    Type: Grant
    Filed: December 20, 1995
    Date of Patent: July 7, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Arthur A. van Hoff, James A. Gosling, Frank Yellin
  • Patent number: 5748964
    Abstract: A program interpreter for computer programs written in a bytecode language, which uses a restricted set of data type specific bytecodes. The interpreter, prior to executing any bytecode program, executes a bytecode program verifier procedure that verifies the integrity of a specified program by identifying any bytecode instruction that would process data of the wrong type for such a bytecode and any bytecode instruction sequences in the specified program that would cause underflow or overflow of the operand stack. If the program verifier finds any instructions that violate predefined stack usage and data type usage restrictions, execution of the program by the interpreter is prevented. After pre-processing of the program by the verifier, if no program faults were found, the interpreter executes the program without performing operand stack overflow and underflow checks and without performing data type checks on operands stored in operand stack. As a result, program execution speed is greatly improved.
    Type: Grant
    Filed: December 20, 1994
    Date of Patent: May 5, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: James A. Gosling
  • Patent number: 5740441
    Abstract: A program interpreter for computer programs written in a bytecode language, which uses a restricted set of data type specific bytecodes. The interpreter, prior to executing any bytecode program, executes a bytecode program verifier procedure that verifies the integrity of a specified program by identifying any bytecode instruction that would process data of the wrong type for such a bytecode and any bytecode instruction sequences in the specified program that would cause underflow or overflow of the operand stack. If the program verifier finds any instructions that violate predefined stack usage and data type usage restrictions, execution of the program by the interpreter is prevented. After pre-processing of the program by the verifier, if no program faults were found, the interpreter executes the program without performing operand stack overflow and underflow checks and without performing data type checks on operands stored in operand stack. As a result, program execution speed is greatly improved.
    Type: Grant
    Filed: December 20, 1995
    Date of Patent: April 14, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Frank Yellin, James A. Gosling
  • Patent number: 5724425
    Abstract: Source code to be protected, a software application writer's private key, along with an application writer's license provided to the first computer. The application writer's license includes identifying information such as the application writer's name as well as the application writer's public key. A compiler program executed by the first computer compiles the source code into binary code, and computes a message digest for the binary code. The first computer then encrypts the message digest using the application writer's private key, such that the encrypted message digest is defined as a digital "signature" of the application writer. A software passport is then generated which includes the application writer's digital signature, the application writer's license and the binary code. The software passport is then distributed to a user using any number of software distribution models known in the industry.
    Type: Grant
    Filed: June 10, 1994
    Date of Patent: March 3, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Sheue-Ling Chang, James Gosling
  • Patent number: 5668999
    Abstract: The present invention provides a verifier for use in conjunction with programs utilizing data type specific bytecodes for verifying the proper operation of the executable program prior to actual execution by a host processor. A verifier is provided which includes a virtual stack for temporarily storing stack information which parallels the typical stack operations required during the execution a bytecode program. The verifier also includes a stack snapshot storage structure having a snapshot directory and stack snapshot storage area for storing the state of the virtual stack at various points during program verification so as to assure proper stack manipulations by the source program. A two step source program verification process is provided for in which the source program is initially loaded into the verifier and a first pass source program evaluation is performed.
    Type: Grant
    Filed: December 20, 1994
    Date of Patent: September 16, 1997
    Assignee: Sun Microsystems, Inc.
    Inventor: James A. Gosling
  • Patent number: 5630066
    Abstract: A class loader downloads objects and object viewers from remote computer nodes, and invokes locally stored object viewers to view objects. When a user selects an object to view, a conventional downloading of the referenced object is initiated. The class loader, however, utilizes data type information received at the beginning of the object downloading process to determine if a viewer for the referenced object is available on the user's workstation. If an appropriate view is not locally available, the class loader automatically locates an appropriate viewer on the server from which the object is being downloaded, or from any other appropriate server known to the user's workstation. The class loader downloads the located viewer and then invokes a program verification procedure to verify the integrity of the downloaded viewer before the viewer is executed.
    Type: Grant
    Filed: December 20, 1994
    Date of Patent: May 13, 1997
    Assignee: Sun Microsystems, Inc.
    Inventor: James A. Gosling
  • Patent number: 5519825
    Abstract: Full-motion animation video is displayed in a computer system through use of sprite objects. The sprite objects define the images on the output display, and the locations of the sprite objects are changed to create the animation. The computer system includes three areas of physical memory assigned the status of a front buffer, a back buffer, and a cache buffer. The front buffer stores a frame currently displayed on the output display. The cache buffer is utilized to store a subset of the sprite objects so that all sprite objects need not be rendered for each frame of animation. The contents of the cache buffer are copied to the back buffer during display of the front buffer. To display a subsequent frame, the front and back buffers are switched. A cache buffer permits display of full-motion animation by minimizing use of processor and computer resources.
    Type: Grant
    Filed: November 16, 1993
    Date of Patent: May 21, 1996
    Assignee: Sun Microsystems, Inc.
    Inventors: Patrick J. Naughton, James A. Gosling
  • Patent number: 5455464
    Abstract: A digital wiring configuration comprises a switch control allowing a user to select a function to control a corresponding electrical device. A control unit couples electrical power to the electrical devices through power outlets. The control unit allows an operator to dynamically configure the switch controls to operate electrical devices at specified power outlets. Upon selection of a function on the switch control, the switch control transmits both a switch state, indicative of the function selected, and a switch identification that uniquely identifies that switch control. The control unit receives the switch state and the switch identification and generates a device identification uniquely identifying the power outlet corresponding to the control switch. The control unit transmits the device identification and the switch state to the power outlets. The corresponding power outlet is selected through the device identification and executes the function in accordance with the switch state.
    Type: Grant
    Filed: October 31, 1994
    Date of Patent: October 3, 1995
    Assignee: FirstPerson, Inc.
    Inventor: James Gosling
  • Patent number: 5367685
    Abstract: A hybrid compiler-interpreter comprising a compiler for "compiling" source program code, and an interpreter for interpreting the "compiled" code, is provided to a computer system. The compiler comprises a code generator that generates code in intermediate form with data references made on a symbolic basis. The interpreter comprises a main interpretation routine, and two data reference handling routines, a dynamic field reference routine for handling symbolic references, and a static field reference routine for handling numeric references. The dynamic field reference routine, when invoked, resolves a symbolic reference and rewrites the symbolic reference into a numeric reference. After rewriting, the dynamic field reference routine returns to the main interpretation routine without advancing program execution to the next instruction, thereby allowing the rewritten instruction with numeric reference to be reexecuted.
    Type: Grant
    Filed: December 22, 1992
    Date of Patent: November 22, 1994
    Assignee: FirstPerson, Inc.
    Inventor: James Gosling
  • Patent number: 5267054
    Abstract: In the image generation method and apparatus of the present invention, an image generation apparatus is provided in which a digital halftone cell of threshold values is generated and broken down into a plurality of tiles determined from the locations of the four corners of the halftone cell. The tiles when put together form a bounding box around the halftone cell. These tiles are arranged into a threshold array of threshold values wherein the width of the array is equal to the number of threshold values in a sequence of threshold values across a row of contiguous tiles and the height of the array is equal to the greatest common denominator of the x axis increment and y axis increment between vertices of the halftone cell.The threshold array is stored in memory for subsequent reference during the halftoning process.
    Type: Grant
    Filed: June 26, 1991
    Date of Patent: November 30, 1993
    Assignee: Sun Microsystems, Inc.
    Inventors: Sheue L. Chang, James Gosling
  • Patent number: 5091717
    Abstract: A computer system comprising a display memory, a window indentification memory, logic circuitry for ascertaining that information to be stored at each position of the display memory is in the correct window by comparing the window number in the window identification memory with the window number of information to be sent to the display memory, and a window identification look-up table activated by window identification signals for providing an output to select the number of bits of color information to be output from the display memory to provide color information for an output device.
    Type: Grant
    Filed: May 1, 1989
    Date of Patent: February 25, 1992
    Assignee: Sun Microsystems, Inc.
    Inventors: Susan Carrie, Serdar Ergene, James Gosling
  • Patent number: D386167
    Type: Grant
    Filed: February 23, 1993
    Date of Patent: November 11, 1997
    Assignee: Sun Microsystems, Inc.
    Inventors: Patrick J. Naughton, David A. LaVallee, Christopher S. Warth, James Gosling, Edward H. Frank, R. Michael Sheridan, Joseph M. Palrang
  • Patent number: D389134
    Type: Grant
    Filed: March 31, 1997
    Date of Patent: January 13, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Patrick J. Naughton, David A. LaVallee, Christopher S. Warth, James Gosling, Edward H. Frank, R. Michael Sheridan, Joseph M. Palrang
  • Patent number: D401922
    Type: Grant
    Filed: March 31, 1997
    Date of Patent: December 1, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Patrick J. Naughton, David A. LaVallee, Christopher S. Warth, James Gosling, Edward H. Frank, R. Michael Sheridan, Joseph M. Palrang