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: 10491665Abstract: 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: GrantFiled: January 6, 2016Date of Patent: November 26, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Christopher S. Gouge, David Pokluda, Rajasekaran Rangarajan
-
Publication number: 20160119412Abstract: 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: ApplicationFiled: January 6, 2016Publication date: April 28, 2016Inventors: Christopher S. Gouge, David Pokluda, Rajasekaran Rangarajan
-
Patent number: 9253164Abstract: 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: GrantFiled: September 12, 2011Date of Patent: February 2, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Christopher S Gouge, David Pokluda, Rajasekaran Rangarajan
-
Publication number: 20150324188Abstract: 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: ApplicationFiled: July 20, 2015Publication date: November 12, 2015Inventors: Hrishikesh S. Raje, Mark Henriksen Phaedrus, Christopher S. Gouge
-
Patent number: 9110755Abstract: 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: GrantFiled: August 10, 2012Date of Patent: August 18, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Hrishikesh S. Raje, Mark Henriksen Phaedrus, Christopher S. Gouge
-
Patent number: 8990953Abstract: 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: GrantFiled: December 16, 2013Date of Patent: March 24, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Hrishikesh S. Raje, Jimin Li, Leo Edwin Lie, Rajasekaran Rangarajan, Christopher S. Gouge
-
Patent number: 8869142Abstract: 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: GrantFiled: January 27, 2006Date of Patent: October 21, 2014Assignee: Microsoft CorporationInventors: 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: 8762984Abstract: 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: GrantFiled: May 31, 2007Date of Patent: June 24, 2014Assignee: Microsoft CorporationInventors: Christopher S. Gouge, Craig Marl
-
Patent number: 8726263Abstract: 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: GrantFiled: September 28, 2011Date of Patent: May 13, 2014Assignee: Microsoft CorporationInventors: Rajasekaran Rangarajan, Christopher S. Gouge, Hrishikesh S. Raje, Mark H. Phaedrus, Leo Edwin Lie
-
Publication number: 20140101779Abstract: 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: ApplicationFiled: December 16, 2013Publication date: April 10, 2014Applicant: Microsoft CorporationInventors: Hrishikesh S. Raje, Jimin Li, Leo Edwin Lie, Rajasekaran Rangarajan, Christopher S. Gouge
-
Publication number: 20140047426Abstract: 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: ApplicationFiled: August 10, 2012Publication date: February 13, 2014Applicant: MICROSOFT CORPORATIONInventors: Hrishikesh S. Raje, Mark Henriksen Phaedrus, Christopher S. Gouge
-
Patent number: 8613101Abstract: 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: GrantFiled: September 12, 2011Date of Patent: December 17, 2013Assignee: Microsoft CorporationInventors: Hrishikesh S. Raje, Christopher S. Gouge, Rajasekaran Rangarajan, Leo Edwin Lie, Jimin Li
-
Publication number: 20130081008Abstract: 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: ApplicationFiled: September 28, 2011Publication date: March 28, 2013Applicant: MICROSOFT CORPORATIONInventors: Rajasekaran Rangarajan, Christopher S. Gouge, Hrishikesh S. Raje, Mark H. Phaedrus, Leo Edwin Lie
-
Publication number: 20130067599Abstract: 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: ApplicationFiled: September 12, 2011Publication date: March 14, 2013Applicant: MICROSOFT CORPORATIONInventors: Hrishikesh S. Raje, Christopher S. Gouge, Rajasekaran Rangarajan, Leo Edwin Lie, Jimin Li
-
Publication number: 20130064370Abstract: 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: ApplicationFiled: September 12, 2011Publication date: March 14, 2013Applicant: Microsoft CorporationInventors: Christopher S. Gouge, David Pokluda, Rajasekaran Rangarajan
-
Patent number: 8201164Abstract: 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: GrantFiled: July 20, 2007Date of Patent: June 12, 2012Assignee: Microsoft CorporationInventors: Edward F. Reus, Christopher S. Gouge, Steve P. Shih
-
Patent number: 7962908Abstract: 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: GrantFiled: April 4, 2007Date of Patent: June 14, 2011Assignee: Microsoft CorporationInventors: Christopher S. Gouge, James S. Masson, Theodore C. VanZwol, Michael James Day
-
Patent number: 7747998Abstract: 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: GrantFiled: August 31, 2004Date of Patent: June 29, 2010Assignee: Microsoft CorporationInventors: Carolyn L. Napier, Christopher S. Gouge, David E. Kays, Rahul Thombre
-
Patent number: 7703090Abstract: 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: GrantFiled: August 31, 2004Date of Patent: April 20, 2010Assignee: Microsoft CorporationInventors: Carolyn L. Napier, Christopher S. Gouge, David E. Kays, Rahul Thombre
-
Patent number: 7552430Abstract: 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: GrantFiled: August 31, 2004Date of Patent: June 23, 2009Assignee: Microsoft CorporationInventors: Carolyn L. Napier, Christopher S. Gouge, David E. Kays, Rahul Thombre