Patents by Inventor Christopher S. Gouge

Christopher S. Gouge 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: 10491665
    Abstract: Techniques for obtaining and providing a portion of content include receiving a request for the portion of the content, requesting and receiving one or more data chunks, processing the one or more data chunks, and providing one or more data blocks as the requested portion of the content. The processing may include validating, decrypting, and/or decompressing the one or more data chunks to create the one or more data blocks. Techniques for providing metadata and one or more data chunks may include receiving content and dividing the content into data blocks. Processing may then be performed on the data blocks to create data chunks, and the metadata may be generated from the processing. The metadata and one or more of the data chunks may be provided to a device.
    Type: Grant
    Filed: January 6, 2016
    Date of Patent: November 26, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Christopher S. Gouge, David Pokluda, Rajasekaran Rangarajan
  • Publication number: 20160119412
    Abstract: Techniques for obtaining and providing a portion of content include receiving a request for the portion of the content, requesting and receiving one or more data chunks, processing the one or more data chunks, and providing one or more data blocks as the requested portion of the content. The processing may include validating, decrypting, and/or decompressing the one or more data chunks to create the one or more data blocks. Techniques for providing metadata and one or more data chunks may include receiving content and dividing the content into data blocks. Processing may then be performed on the data blocks to create data chunks, and the metadata may be generated from the processing. The metadata and one or more of the data chunks may be provided to a device.
    Type: Application
    Filed: January 6, 2016
    Publication date: April 28, 2016
    Inventors: Christopher S. Gouge, David Pokluda, Rajasekaran Rangarajan
  • Patent number: 9253164
    Abstract: Techniques for obtaining and providing a portion of content include receiving a request for the portion of the content, requesting and receiving one or more data chunks, processing the one or more data chunks, and providing one or more data blocks as the requested portion of the content. The processing may include validating, decrypting, and/or decompressing the one or more data chunks to create the one or more data blocks. Techniques for providing metadata and one or more data chunks may include receiving content and dividing the content into data blocks. Processing may then be performed on the data blocks to create data chunks, and the metadata may be generated from the processing. The metadata and one or more of the data chunks may be provided to a device.
    Type: Grant
    Filed: September 12, 2011
    Date of Patent: February 2, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Christopher S Gouge, David Pokluda, Rajasekaran Rangarajan
  • Publication number: 20150324188
    Abstract: Techniques for aggregation of update sets are described. In at least some implementations, techniques enable relationships between the updates to be created, managed, and applied in a variety of ways. For example, updates can be grouped in a set for installation on a computing device as an integrated set. Grouping updates in a set can be based on membership rules that specify whether a particular update may be grouped in a set, and conditions under which the particular update may be grouped in a set. Updates that are included in a set may be associated with interaction rules that specify how updates in the set interact as part of an installation process. In at least some implementations, membership rules and interaction rules for updates can be dynamically created, configured, and/or dynamically reconfigured.
    Type: Application
    Filed: July 20, 2015
    Publication date: November 12, 2015
    Inventors: Hrishikesh S. Raje, Mark Henriksen Phaedrus, Christopher S. Gouge
  • Patent number: 9110755
    Abstract: Techniques for aggregation of update sets are described. In at least some implementations, techniques enable relationships between the updates to be created, managed, and applied in a variety of ways. For example, updates can be grouped in a set for installation on a computing device as an integrated set. Grouping updates in a set can be based on membership rules that specify whether a particular update may be grouped in a set, and conditions under which the particular update may be grouped in a set. Updates that are included in a set may be associated with interaction rules that specify how updates in the set interact as part of an installation process. In at least some implementations, membership rules and interaction rules for updates can be dynamically created, configured, and/or dynamically reconfigured.
    Type: Grant
    Filed: August 10, 2012
    Date of Patent: August 18, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Hrishikesh S. Raje, Mark Henriksen Phaedrus, Christopher S. Gouge
  • Patent number: 8990953
    Abstract: Software update distribution techniques are disclosed. Authentication information is received, from a content source authenticator, by an update agent included in a client device. The authentication information comprises a list of a plurality of content sources, wherein the plurality of content sources have been verified by the content source authenticator as being authentic content sources for legitimate software applications. The update agent selects a first content source of the plurality of content sources, where the first content source is configured to provide updates for a first software application. The update agent checks the first content source for updates for the first software application.
    Type: Grant
    Filed: December 16, 2013
    Date of Patent: March 24, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Hrishikesh S. Raje, Jimin Li, Leo Edwin Lie, Rajasekaran Rangarajan, Christopher S. Gouge
  • Patent number: 8869142
    Abstract: Sending installation information. A method may be performed, for example, in a network computing environment including one or more servers connected to one or more clients. The method includes signing a package including installation information. A hash of the package is created. A metadata data set is created. The metadata data set includes a description of the package, an identification for the package, applicability rules describing intended recipients of the installation information, the hash of the package, and installation instructions for the package. The metadata data set is sent to a target group of systems in the network computing environment.
    Type: Grant
    Filed: January 27, 2006
    Date of Patent: October 21, 2014
    Assignee: Microsoft Corporation
    Inventors: Christopher S. Gouge, Craig C. Marl, David C. Hennessey, David E. Kays, Edward F. Reus, Krishnan Rangarajan, Marc Shepard, Mazhar N. Mohammed, Steve P. Shih
  • Patent number: 8762984
    Abstract: Providing content according to a distribution infrastructure. A content provider creates content and organizes the content into a channel. The content included in the channel is described by attributes associated with the channel. The channel is published to a processor and the processor hosts the published channel. A client computing device selectively subscribes to a plurality of published channels. The client computing device aggregates content form the plurality of subscribed channels and provides the aggregated content to a user in a single update experience.
    Type: Grant
    Filed: May 31, 2007
    Date of Patent: June 24, 2014
    Assignee: Microsoft Corporation
    Inventors: Christopher S. Gouge, Craig Marl
  • Patent number: 8726263
    Abstract: Techniques for detection and installation of software on a per-user basis are disclosed. An update agent in a client device may receive configuration data for a software application, the configuration data indicating availability of updates for the software application. The client device may be configured to have user accounts for a plurality of users. The update agent may determine that the software application is a per-user application. The update agent may identify a subset of the plurality of users for whom the updates for the software application are to be installed. The update agent may download the updates for the software application, and install the updates for a first user of the subset, in response to the first user logging into the client device.
    Type: Grant
    Filed: September 28, 2011
    Date of Patent: May 13, 2014
    Assignee: Microsoft Corporation
    Inventors: Rajasekaran Rangarajan, Christopher S. Gouge, Hrishikesh S. Raje, Mark H. Phaedrus, Leo Edwin Lie
  • Publication number: 20140101779
    Abstract: Software update distribution techniques are disclosed. Authentication information is received, from a content source authenticator, by an update agent included in a client device. The authentication information comprises a list of a plurality of content sources, wherein the plurality of content sources have been verified by the content source authenticator as being authentic content sources for legitimate software applications. The update agent selects a first content source of the plurality of content sources, where the first content source is configured to provide updates for a first software application. The update agent checks the first content source for updates for the first software application.
    Type: Application
    Filed: December 16, 2013
    Publication date: April 10, 2014
    Applicant: Microsoft Corporation
    Inventors: Hrishikesh S. Raje, Jimin Li, Leo Edwin Lie, Rajasekaran Rangarajan, Christopher S. Gouge
  • Publication number: 20140047426
    Abstract: Techniques for aggregation of update sets are described. In at least some implementations, techniques enable relationships between the updates to be created, managed, and applied in a variety of ways. For example, updates can be grouped in a set for installation on a computing device as an integrated set. Grouping updates in a set can be based on membership rules that specify whether a particular update may be grouped in a set, and conditions under which the particular update may be grouped in a set. Updates that are included in a set may be associated with interaction rules that specify how updates in the set interact as part of an installation process. In at least some implementations, membership rules and interaction rules for updates can be dynamically created, configured, and/or dynamically reconfigured.
    Type: Application
    Filed: August 10, 2012
    Publication date: February 13, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Hrishikesh S. Raje, Mark Henriksen Phaedrus, Christopher S. Gouge
  • Patent number: 8613101
    Abstract: Software update distribution techniques are disclosed. Authentication information is received, from a content source authenticator, by an update agent included in a client device. The authentication information comprises a list of a plurality of content sources, wherein the plurality of content sources have been verified by the content source authenticator as being authentic content sources for legitimate software applications. The update agent selects a first content source of the plurality of content sources, where the first content source is configured to provide updates for a first software application. The update agent checks the first content source for updates for the first software application.
    Type: Grant
    Filed: September 12, 2011
    Date of Patent: December 17, 2013
    Assignee: Microsoft Corporation
    Inventors: Hrishikesh S. Raje, Christopher S. Gouge, Rajasekaran Rangarajan, Leo Edwin Lie, Jimin Li
  • Publication number: 20130081008
    Abstract: Techniques for detection and installation of software on a per-user basis are disclosed. An update agent in a client device may receive configuration data for a software application, the configuration data indicating availability of updates for the software application. The client device may be configured to have user accounts for a plurality of users. The update agent may determine that the software application is a per-user application. The update agent may identify a subset of the plurality of users for whom the updates for the software application are to be installed. The update agent may download the updates for the software application, and install the updates for a first user of the subset, in response to the first user logging into the client device.
    Type: Application
    Filed: September 28, 2011
    Publication date: March 28, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Rajasekaran Rangarajan, Christopher S. Gouge, Hrishikesh S. Raje, Mark H. Phaedrus, Leo Edwin Lie
  • Publication number: 20130067599
    Abstract: Software update distribution techniques are disclosed. Authentication information is received, from a content source authenticator, by an update agent included in a client device. The authentication information comprises a list of a plurality of content sources, wherein the plurality of content sources have been verified by the content source authenticator as being authentic content sources for legitimate software applications. The update agent selects a first content source of the plurality of content sources, where the first content source is configured to provide updates for a first software application. The update agent checks the first content source for updates for the first software application.
    Type: Application
    Filed: September 12, 2011
    Publication date: March 14, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Hrishikesh S. Raje, Christopher S. Gouge, Rajasekaran Rangarajan, Leo Edwin Lie, Jimin Li
  • Publication number: 20130064370
    Abstract: Techniques for obtaining and providing a portion of content include receiving a request for the portion of the content, requesting and receiving one or more data chunks, processing the one or more data chunks, and providing one or more data blocks as the requested portion of the content. The processing may include validating, decrypting, and/or decompressing the one or more data chunks to create the one or more data blocks. Techniques for providing metadata and one or more data chunks may include receiving content and dividing the content into data blocks. Processing may then be performed on the data blocks to create data chunks, and the metadata may be generated from the processing. The metadata and one or more of the data chunks may be provided to a device.
    Type: Application
    Filed: September 12, 2011
    Publication date: March 14, 2013
    Applicant: Microsoft Corporation
    Inventors: Christopher S. Gouge, David Pokluda, Rajasekaran Rangarajan
  • Patent number: 8201164
    Abstract: A regulation service can deliver software packages to client computer systems while minimizing the overall effect on network (internet or LAN) traffic and/or server loads. In one implementation, the regulation service assigns acceptance rates to different software packages based on any number of different factors. Upon request for a software package, the regulation service can provide the acceptance rate and a refresh rate that differs for each software package. A client computer system can then calculate an access value, and if the access value is within an acceptance rate, the client computer system can access (e.g., download) a corresponding software package. If the access value is outside of the acceptance rate, the client computer system can refresh its requests until it identifies that the acceptance rate has changed, and the calculated value is within the new acceptance rate. Additional implementations include delivering bandwidth management policies to client computer systems.
    Type: Grant
    Filed: July 20, 2007
    Date of Patent: June 12, 2012
    Assignee: Microsoft Corporation
    Inventors: Edward F. Reus, Christopher S. Gouge, Steve P. Shih
  • Patent number: 7962908
    Abstract: A system and method are disclosed for creating and describing a configurable data set, configuring the data set and merging a resulting configured data set into a target data set. One or more configurable data elements are stored in a configurable data set that forms part of a configurable merge module. The configurable merge module also includes metadata concerning the configurable data. The metadata describes the data elements and how they can be configured and how to implement changes to the configurable data. Each configurable data element can be presented to the configurable merge module consumer through a user interface. The configurable merge module consumer can thus make configuration choices. Also provided is a transformation engine for customizing the configurable data based on configurable merge module consumer choices and a merge engine for inserting configured data into a target data set.
    Type: Grant
    Filed: April 4, 2007
    Date of Patent: June 14, 2011
    Assignee: Microsoft Corporation
    Inventors: Christopher S. Gouge, James S. Masson, Theodore C. VanZwol, Michael James Day
  • Patent number: 7747998
    Abstract: Allowing a non-privileged user to apply a patch to a software product. A patch is received from a non-privileged user. It is determined if the received patch may be elevated by the non-privileged user for applying to a target software product. The received patch is applied to the target software product if it is determined that the received patch may be elevated by the non-privileged user for applying to the target software product.
    Type: Grant
    Filed: August 31, 2004
    Date of Patent: June 29, 2010
    Assignee: Microsoft Corporation
    Inventors: Carolyn L. Napier, Christopher S. Gouge, David E. Kays, Rahul Thombre
  • Patent number: 7703090
    Abstract: Uninstalling a patch applied to a software product installed on a computer. A current state of a software product is identified. A desired state of the software product is determined. The desired state of the software product represents a state of the software product when a patch applied to the software product is removed from the software product. The patch is removed from the software product to transition the software product from the identified current state to the determined desired state.
    Type: Grant
    Filed: August 31, 2004
    Date of Patent: April 20, 2010
    Assignee: Microsoft Corporation
    Inventors: Carolyn L. Napier, Christopher S. Gouge, David E. Kays, Rahul Thombre
  • Patent number: 7552430
    Abstract: Updating a software product by a plurality of patches. Sequencing data of each patch of the plurality of patches is received from a user such as a patch author. Each patch of the plurality of patches has a defined membership in a portion of the software product and has a defined order in the portion relative to one or more other patches that are members of the portion. The sequencing data indicates a portion of the software product of which the patch is a member and a relative ordering between the patch and one or more other members of the portion. A logical order of application for the plurality of patches is determined based on the received sequencing data. The plurality of patches is applied to the software product according to the determined logical order of application.
    Type: Grant
    Filed: August 31, 2004
    Date of Patent: June 23, 2009
    Assignee: Microsoft Corporation
    Inventors: Carolyn L. Napier, Christopher S. Gouge, David E. Kays, Rahul Thombre