Patents by Inventor Daniel D. Grove

Daniel D. Grove 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: 9762670
    Abstract: In aspect an application may be configured to issue a request to store an object, with the request including an object reference. A delegate may be configured to receive the request to store the object, determine a hosted storage service, from among multiple hosted storage services, and a corresponding access protocol based on the object reference, and store the object in the hosted storage service using the corresponding protocol.
    Type: Grant
    Filed: November 17, 2014
    Date of Patent: September 12, 2017
    Assignee: Google Inc.
    Inventors: Daniel D. Grove, Brian N. Bershad, David Erb
  • Patent number: 8892677
    Abstract: In aspect an application may be configured to issue a request to store an object, with the request including an object reference. A delegate may be configured to receive the request to store the object, determine a hosted storage service, from among multiple hosted storage services, and a corresponding access protocol based on the object reference, and store the object in the hosted storage service using the corresponding protocol.
    Type: Grant
    Filed: January 29, 2010
    Date of Patent: November 18, 2014
    Assignee: Google Inc.
    Inventors: Daniel D. Grove, Brian Bershad, David Erb
  • Patent number: 7016904
    Abstract: The present invention provides the method and system that redistribute the nodes of a sorted tree to enable faster data insertion. Further, the tree typically contains a fixed number of levels, each comprising a fixed number of nodes. Each node in the tree is indexed and each leaf node may comprise a number of data segments. An increment is empirically calculated as space redistributed among non-empty leaf nodes. Furthermore, when a data segment is inserted and certain conditions are met, a data structure with a marked head and tail effectively “traverses” the tree from one end to the other searching for empty leaf nodes. In cases where the data structure encounters an empty leaf node, the data structure continues traversing unless empirically determined conditions stipulate that the process halts until the next data segment insertion before continuing.
    Type: Grant
    Filed: April 25, 2001
    Date of Patent: March 21, 2006
    Assignee: Altera Corporation
    Inventors: Daniel D. Grove, James Michael O'Connor, Edward Funnekotter
  • Patent number: 6256784
    Abstract: The present invention provides an interpreter with reduced memory access and improved jump-through-register handling. In one embodiment, a method includes storing a handler for a bytecode in a cell of a predetermined size of a table, and generating an address of the handler for the bytecode using a shift and an ADD operation. In particular, the handler address is generated by adding a base address of the table and an offset into the table. In another embodiment, a method includes prefetching a target handler address for providing improved jump-through-register handling.
    Type: Grant
    Filed: August 14, 1998
    Date of Patent: July 3, 2001
    Assignee: ATI International SRL
    Inventor: Daniel D. Grove
  • Patent number: 6205578
    Abstract: The present invention provides an improved interpreter for stack-based languages. In one embodiment, a method includes executing a first interpreter for a first state, and executing a second interpreter for a second state. In particular, the first state indicates that no elements of a stack are stored in registers of a microprocessor, and a second state indicates that an element of the stack is stored in a register of the microprocessor.
    Type: Grant
    Filed: August 14, 1998
    Date of Patent: March 20, 2001
    Assignee: ATI International SRL
    Inventor: Daniel D. Grove
  • Patent number: 6112025
    Abstract: In a system for dynamically linking a compiled procedure to referenced object components during execution of the compiled procedure, a native code loader loads the compiled procedure into a user's address space, and replaces a first instruction in the compiled procedure that references a first object component with a replacement instruction that invokes execution of a dynamic resolution procedure. While executing the compiled procedure, execution of the replacement instruction invokes execution of the dynamic resolution procedure. The dynamic resolution procedure locates the first object component, replaces the replacement instruction in the compiled procedure with a patch instruction, corresponding to the first instruction, that references the located first object component.
    Type: Grant
    Filed: March 25, 1996
    Date of Patent: August 29, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Nand M. Mulchandani, Daniel D. Grove
  • Patent number: 5857103
    Abstract: In its various embodiments, the present invention provides a method and apparatus for creating a target executable program from the source code of a target computer program for execution on a target processor. The target processor provided by the method and apparatus has a first set of registers and a second set of registers. Generally, the target processor is capable of executing a first set of instructions which only address the first set of registers. The method and apparatus provides a second set of instruction for the target processor which include a subset of frequently executed instructions within the first set of instructions. These second set of instructions are novel because they able to address both the first set of registers and the second set of registers. A compiler is provided and used for compiling the source code into a number of target executable instructions and allocating the registers on the target processor.
    Type: Grant
    Filed: June 14, 1996
    Date of Patent: January 5, 1999
    Assignee: Sun Microsystems, Inc.
    Inventor: Daniel D. Grove
  • Patent number: 5659754
    Abstract: An optimizing compiler process and apparatus is disclosed for more accurately and efficiently identifying live variable sets in a portion of a target computer program, so as to more efficiently allocate registers in a computer central processing unit. The process of the invention includes the steps of performing a static single assignment transform to a computer program, including the addition of phi functions to a control flow graph. Basic blocks representing a use of a variable are further added to the control flow graph between the phi functions and definitions of the variables converging at the phi functions. A backward dataflow analysis is then performed to identify the live variable sets. The variables in the argument of phi functions are not included as a use of those variables in this dataflow analysis. The dataflow analysis may be iteratively performed until the live variable sets remain constant between iterations.
    Type: Grant
    Filed: March 31, 1995
    Date of Patent: August 19, 1997
    Assignee: Sun Microsystems, Inc.
    Inventors: Daniel D. Grove, David C. Schwartz