Patents by Inventor Patrick Gates
Patrick Gates 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).
-
Publication number: 20090300221Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: August 11, 2009Publication date: December 3, 2009Applicant: APPLE INC.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 7584468Abstract: Distributing and synchronizing objects is disclosed. An object (including the data and behavior for the object) is copied into local address space. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, a policy that specifies conditions as to when objects are synchronized is used. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.) or based on the type or number of messages transmitted. A default policy may provide for the synchronization of local objects whenever a client issues a request from the remote server. The remote server transmits any updated object information when it responds to the local object request. The updated object information may be utilized to synchronize the objects.Type: GrantFiled: June 20, 2005Date of Patent: September 1, 2009Assignee: Apple Inc.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 7536693Abstract: Incoming requests to a data storage system are distributed among one or more peer node computer systems of the data storage system in accordance with a load spreading configuration. A hash value is computed from the request utilizing selected header information of the request. The hash value is utilized in selecting a peer node computer system to receive the request in accordance with the load spreading configuration, and the request is redirected to the selected peer node computer system. In one embodiment, the load spreading configuration is implemented at a layer 2 switch and the load spreading configuration is reconfigurable by a peer node computer system of the data storage system.Type: GrantFiled: June 30, 2004Date of Patent: May 19, 2009Assignee: Sun Microsystems, Inc.Inventors: Olaf Manczak, Michael Goff, Patrick Gates
-
Publication number: 20080120609Abstract: Systems and methods for upgrading from one or more digital media assets to a set of digital media assets over a network are described. A potential purchaser can be notified of available upgrade opportunities that are available for purchase. The potential purchaser can elect to pursue an upgrade opportunity so as to purchase a set of digital media assets. Upon upgrading to the set of digital media assets, the digital media assets within the set of digital media assets are made available to the purchaser. Typically, on upgrading from one or more of the digital media assets in the set of digital media assets to the entire set of digital media assets, the purchaser pays a lower cost than would be otherwise charged if the purchaser were to purchase the set of digital media assets in a non-upgrade manner. The cost associated with an upgrade opportunity can be based on prior purchases of digital media assets in the set of digital media assets.Type: ApplicationFiled: March 12, 2007Publication date: May 22, 2008Inventors: Patrick Gates, Richard Wagner, Damen Law, Sam Gharabsty, Tracy Pirnack, Patrice Gautier, Debra Ameerally, Hiro Mitsuji, Alan Ward
-
Patent number: 7328303Abstract: In accordance with the invention, a data storage system for storing and retrieving fixed data content includes: a storage system network; one or more peer node computer systems interconnected by the storage system network; and at least one disklet stored on at least one of the one or more peer node computer systems, the disklet for execution on the data storage system using data that are stored on, being written to, or being read from the data storage system. In one embodiment, a disklet includes executable program code and a disklet interface that permits the program code of the disklet to be loaded on to the data storage system and executed on the data storage system by a user.Type: GrantFiled: June 30, 2004Date of Patent: February 5, 2008Assignee: Sun Microsystems, Inc.Inventors: Steven Richard Waterhouse, Sherif M. Botros, Patrick Gates, Akhil Arora
-
Patent number: 7299325Abstract: A method includes determining a garbage collection list for a data storage structure of a node in a data storage system, the garbage collection list including one or more layout map identifiers (IDs) for garbage collection. A data fragment stored on the data storage structure is located at a first location and a layout map ID associated with the data fragment is determined. A determination is made whether the layout map ID associated with the data fragment matches a layout map ID for garbage collection in the garbage collection list. If the layout map ID associated with the data fragment matches a layout map ID for garbage collection in the garbage collection list, a determination is made whether the data fragment is present at a second location on the data storage system. If the data fragment is present at a second location on the data storage system, the data fragment at the first location is determined to be a garbage fragment and deleted from the data storage system.Type: GrantFiled: August 24, 2005Date of Patent: November 20, 2007Assignee: Sun Microsystems, Inc.Inventors: Steven Richard Waterhouse, Sherif M. Botros, Olaf Manczak, Patrick Gates, Jeremy Werner, Sacha Arnoud
-
Patent number: 7296180Abstract: A method for recovery of data objects on a data storage system includes determining a list of layout map IDs that place data objects on a node of a data storage system. For each layout map ID, a list of object IDs associated with each of the data objects assigned the layout map ID is determined. For each object ID, a list of data object fragments associated with the object ID is determined. A determination is made whether each of the data object fragments is present on the node. If a data object fragment is not present on the node, the data object fragment is reconstructed on the data storage system. The method can be automatically implemented by each of one or more operational nodes of a distributed data storage system at configured time intervals, and/or upon the operational loss of a data storage structure of a node, or a node.Type: GrantFiled: June 30, 2004Date of Patent: November 13, 2007Assignee: Sun Microsystems, Inc.Inventors: Steven Richard Waterhouse, Sherif M. Botros, Olaf Manczak, Patrick Gates, Jeremy Werner, Sacha Arnoud
-
Publication number: 20050268307Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: June 20, 2005Publication date: December 1, 2005Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Publication number: 20050234689Abstract: A method and system of simulating one-engine-inoperative (OEI) conditions in a multi-engine single-output aircraft which involves the operation of the engines above non-zero power settings, and operating each relative to one another to simulate power loss experienced during an actual failure of at least one engine.Type: ApplicationFiled: December 8, 2003Publication date: October 20, 2005Inventors: Patrick Gates, Teuvo Saario
-
Patent number: 6910052Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: GrantFiled: May 16, 2002Date of Patent: June 21, 2005Assignee: Apple Computer, Inc.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Publication number: 20030004977Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: May 16, 2002Publication date: January 2, 2003Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 6430576Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: GrantFiled: May 10, 1999Date of Patent: August 6, 2002Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Publication number: 20020049579Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: May 10, 1999Publication date: April 25, 2002Inventors: PATRICK GATES, CRAIG FEDERIGHI, ERIC NOYAU