Patents by Inventor William J. Bolosky

William J. Bolosky 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: 9852204
    Abstract: Embodiments are directed to processing read-only operations without storing the operations persistently, determining a processing order for read-only requests, and to directing read-only requests to nodes best able to handle the requests. In an embodiment, a quorum leader receives various read-only requests. The quorum leader controls process ordering for replicas in the leader's quorum. The quorum leader determines an appropriate order for processing the read-only operations, without clock-based synchronization. The quorum leader sends the read-only request to an appropriate replica in the quorum and executes the read-only request at the appropriate replica without storing the operation persistently.
    Type: Grant
    Filed: March 3, 2014
    Date of Patent: December 26, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: William J. Bolosky, Randolph B. Haagens, Norbert P. Kusters, Peng Li
  • Publication number: 20140181026
    Abstract: Embodiments are directed to processing read-only operations without storing the operations persistently, determining a processing order for read-only requests, and to directing read-only requests to nodes best able to handle the requests. In an embodiment, a quorum leader receives various read-only requests. The quorum leader controls process ordering for replicas in the leader's quorum. The quorum leader determines an appropriate order for processing the read-only operations, without clock-based synchronization. The quorum leader sends the read-only request to an appropriate replica in the quorum and executes the read-only request at the appropriate replica without storing the operation persistently.
    Type: Application
    Filed: March 3, 2014
    Publication date: June 26, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: William J. Bolosky, Randolph B. Haagens, Norbert P. Kusters, Peng Li
  • Patent number: 8719143
    Abstract: The claimed subject matter provides a system and/or a method that facilitates preserving and maintaining data and/or services associated with a network service. The network service can be any collection of resources that are maintained by a party (e.g., third-party, off-site, etc.) and accessible by an identified user over a network (e.g., WAN, Internet, etc.). An interface component can receive a termination notification related to the network service. An executor component can relocate at least a portion of one of data and a service associated with the terminated network service to a disparate replacement network service in order to preserve any services and/or data related therewith.
    Type: Grant
    Filed: December 20, 2006
    Date of Patent: May 6, 2014
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Gary W. Flake, Arnold N. Blinn, William J. Bolosky, Lili Cheng, Michael Connolly, Alexander G. Gounares, James R. Larus, Matthew B. MacLaurin, Debi P. Mishra, Amit Mital, Ira L. Snyder, Jr., David R. Treadwell, III
  • Patent number: 8694647
    Abstract: Embodiments are directed to processing read-only operations without storing the operations persistently, determining a processing order for read-only requests, and to directing read-only requests to nodes best able to handle the requests. In an embodiment, a quorum leader receives various read-only requests. The quorum leader controls process ordering for replicas in the leader's quorum. The quorum leader determines an appropriate order for processing the read-only operations, without clock-based synchronization. The quorum leader sends the read-only request to an appropriate replica in the quorum and executes the read-only request at the appropriate replica without storing the operation persistently.
    Type: Grant
    Filed: March 18, 2011
    Date of Patent: April 8, 2014
    Assignee: Microsoft Corporation
    Inventors: William J. Bolosky, Randolph B. Haagens, Norbert P. Kusters, Peng Li
  • Patent number: 8275970
    Abstract: The write optimizer described in this disclosure optimizes write traffic to a disk. The write optimization technique writes small data sets to be written to a disk drive to a log file in write optimized order and rewrites the small data sets to disk drive in read optimized order when the disk drive is idle. The write optimizer reserves a portion of a disk to be used for write performance improvement, and then takes all small writes to the disk and writes them to the reserved area rather than to their intended destination. When the disk becomes idle (or the reserved area full), the write optimizer takes the data that has been written to the reserved area and that has not been subsequently overwritten and copies it to its final location.
    Type: Grant
    Filed: May 15, 2008
    Date of Patent: September 25, 2012
    Assignee: Microsoft Corp.
    Inventor: William J. Bolosky
  • Publication number: 20120239722
    Abstract: Embodiments are directed to processing read-only operations without storing the operations persistently, determining a processing order for read-only requests, and to directing read-only requests to nodes best able to handle the requests. In an embodiment, a quorum leader receives various read-only requests. The quorum leader controls process ordering for replicas in the leader's quorum. The quorum leader determines an appropriate order for processing the read-only operations, without clock-based synchronization. The quorum leader sends the read-only request to an appropriate replica in the quorum and executes the read-only request at the appropriate replica without storing the operation persistently.
    Type: Application
    Filed: March 18, 2011
    Publication date: September 20, 2012
    Applicant: Microsoft Corporation
    Inventors: William J. Bolosky, Randolph B. Haagens, Norbert P. Kusters, Peng Li
  • Patent number: 8205090
    Abstract: Systems and methods for secure file writes after a catastrophic event are allowed over an unauthenticated channel in a serverless distributed file system if an authenticator accompanies the secure file writes. The authenticator can be a power-of-attorney certificate with time limitations, a vector of message authenticated code, or a single message authenticator with secured with a secret shared among members of the serverless distributed file system. The serverless distributed file system includes at least 3f+1 participating computer members, with f representing a number of faults tolerable by the system. The group requires at least one authenticator for file creation and file uploads. Any changes to files stored among the members can be made over an unauthenticated channel if the file changes are secured by the authenticator and the group is able to verify the authenticator.
    Type: Grant
    Filed: September 22, 2008
    Date of Patent: June 19, 2012
    Assignee: Microsoft Corporation
    Inventors: Miguel Oom Temudo de Castro, Atul Adya, John R. Douceur, William J. Bolosky
  • Patent number: 8112452
    Abstract: A serverless distributed file system manages the storage of files and directories using one or more directory groups. The directories may be managed using Byzantine-fault-tolerant groups, whereas files are managed without using Byzantine-fault-tolerant groups. Additionally, the file system may employ a hierarchical namespace to store files. Furthermore, the directory group may employ a plurality of locks to control access to objects (e.g., files and directories) in each directory.
    Type: Grant
    Filed: January 29, 2009
    Date of Patent: February 7, 2012
    Assignee: Microsoft Corporation
    Inventors: Atul Adya, Gerald Cermak, John R. Douceur, Marvin M. Theimer, Roger P. Wattenhofer, William J. Bolosky
  • Publication number: 20110282837
    Abstract: A logical file system is described that distributes copies of files across various different physical storage resources yet provides a consistent view to the user of his or her data, regardless of which machine the user is accessing the files from, and even when the user's computer is offline. The distributed file system uses smart data redundancy to enable a virtually infinite amount of storage as long as additional storage resources are made available to the distributed file system. The result is a reliable storage system that does not necessarily tie the user's data to the user's particular computer. Instead, the user's data is associated with the user—for life—or for however long the user would like the data to be maintained, regardless of whether the user's computer or data storage components are replaced or destroyed.
    Type: Application
    Filed: July 25, 2011
    Publication date: November 17, 2011
    Applicant: Microsoft Corporation
    Inventors: Alexander G. Gounares, Ashok Kuppusamy, Dan Teodosiu, Raymond E. Endres, William J. Bolosky, John R. Douceur
  • Patent number: 8014308
    Abstract: The claimed subject matter provides systems and/or methods that facilitate dynamically allocating resources (e.g., hardware, software, . . . ) supported by a third party service provider. The third party service provider can support any number of services that can be concurrently requested by several clients without user perception of degraded computing performance as compared to conventional systems/techniques due to improved connectivity and mitigated latencies. An interface component can receive a request from a client device. Further, a dynamic allocation component can apportion resources (e.g., hardware resources) supported by the third party service provider to process and respond to the request based at least in part upon subscription data. Moreover, a user state evaluator can determine a state associated with a user and/or the client device; the state can be utilized by the dynamic allocation component to tailor resource allocation.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: September 6, 2011
    Assignee: Microsoft Corporation
    Inventors: William H. Gates, III, Gary W. Flake, William J. Bolosky, Nishant V. Dani, Daniel S. Glasser, Alexander G. Gounares, James R. Larus, Matthew B. MacLaurin, Henricus Johannes Maria Meijer
  • Patent number: 8010498
    Abstract: A logical file system that distributes copies of files across various different physical storage resources yet provides a consistent view to the user of his or her data, regardless of which machine the user is accessing the files from, and even when the user's computer is offline. The distributed file system uses smart data redundancy to enable a virtually infinite amount of storage as long as additional storage resources are made available to the distributed file system. The result is a reliable storage system that does not necessarily tie the user's data to the user's particular computer. Instead, the user's data is associated with the user—for life—or for however long the user would like the data to be maintained, regardless of whether the user's computer or data storage components are replaced or destroyed.
    Type: Grant
    Filed: April 8, 2005
    Date of Patent: August 30, 2011
    Assignee: Microsoft Corporation
    Inventors: Alexander G. Gounares, Ashok Kuppusamy, Dan Teodosiu, Raymond E. Endres, William J. Bolosky, John R. Douceur
  • Patent number: 7886364
    Abstract: A file that has been encrypted using a symmetric key and that has a corresponding access control entry with the symmetric key encrypted using the public key of a public/private key pair can be accessed. An encrypted key cache is also accessed to determine whether an access control entry to symmetric key mapping exists in the cache for the access control entry corresponding to the file. If such a mapping exists in the cache, then the mapped-to symmetric key is obtained form the cache, otherwise the encrypted symmetric key is decrypted using the private key of the public/private key pair. The encrypted key cache itself can also be encrypted and stored as an encrypted file.
    Type: Grant
    Filed: August 18, 2005
    Date of Patent: February 8, 2011
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Atul Adya, William J. Bolosky, Marvin M. Theimer
  • Patent number: 7779253
    Abstract: Cryptographic protocols and methods of employing the same are described. The described protocols advantageously enable two or more identical encryptable objects that are coded for encryption with different keys to be identified as identical without access to either the unencrypted objects or the keys that are used in the encryption process. Additionally, the protocols enable two or more identical encryptable objects to be processed with different encryption keys, yet be stored in a manner so that the total required storage space is proportional to the space that is required to store a single encryptable object, plus a constant amount for each distinct encryption key. In various embodiments, the encryptable objects comprise files and the cryptographic protocols enable encrypted files to be used in connection with single instance store (SIS) systems.
    Type: Grant
    Filed: May 26, 2004
    Date of Patent: August 17, 2010
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, Marvin M. Theimer, William J. Bolosky
  • Patent number: 7765553
    Abstract: A method and system for regulating tasks of background processes so as to reduce interference with foreground processes. The progress rate of a background task (e.g., amount of work performed per unit time) is measured and evaluated against a target amount. If the progress rate appears degraded, the background task is suspended for a computed time interval so as to back off from its interference with a foreground process. Each time the progress rate appears degraded, the time interval is exponentially increased from its previous value up to a maximum, however if the performance appears normal, the time interval is reset to a minimum. Evaluation of the work is statistically based so as to eliminate variations in measurements, and automatic calibration of the target amount is provided, as is a mechanism for prioritizing multiple background tasks.
    Type: Grant
    Filed: December 13, 2004
    Date of Patent: July 27, 2010
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, William J. Bolosky
  • Patent number: 7716672
    Abstract: A method and system for regulating tasks of background processes so as to reduce interference with foreground processes. The progress rate of a background task (e.g., amount of work performed per unit time) is measured and evaluated against a target amount. If the progress rate appears degraded, the background task is suspended for a computed time interval so as to back off from its interference with a foreground process. Each time the progress rate appears degraded, the time interval is exponentially increased from its previous value up to a maximum, however if the performance appears normal, the time interval is reset to a minimum. Evaluation of the work is statistically based so as to eliminate variations in measurements, and automatic calibration of the target amount is provided, as is a mechanism for prioritizing multiple background tasks.
    Type: Grant
    Filed: December 10, 2004
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, William J. Bolosky
  • Patent number: 7689524
    Abstract: An intelligent personalized agent monitors, regulates, and advises a user in decision-making processes for efficiency or safety concerns. The agent monitors an environment and present characteristics of a user and analyzes such information in view of stored preferences specific to one of multiple profiles of the user. Based on the analysis, the agent can suggest or automatically implement a solution to a given issue or problem. In addition, the agent can identify another potential issue that requires attention and suggests or implements action accordingly. Furthermore, the agent can communicate with other users or devices by providing and acquiring information to assist in future decisions. All aspects of environment observation, decision assistance, and external communication can be flexibly limited or allowed as desired by the user.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: March 30, 2010
    Assignee: Microsoft Corporation
    Inventors: Raymond E. Ozzie, William H. Gates, III, Gary W. Flake, Thomas F. Bergstraesser, Arnold N. Blinn, William J. Bolosky, Christopher W. Brumme, Lili Cheng, Michael Connolly, Dane A. Glasgow, Daniel S. Glasser, Alexander G. Gounares, James R. Larus, Matthew B. MacLaurin, Henricus Johannes Maria Meijer, Debi P. Mishra, Amit Mital, Ira L. Snyder, Jr., Chandramohan A. Thekkath, Melora Zaner-Godsey
  • Patent number: 7668906
    Abstract: A wire protocol provides message formats for creating multiple network connections between a media server and a client. These multiple network connections may include a control link connection for passing control information and a data funnel connection for passing data of multiple media. The data funnel connection may be a multipoint-to-point connection that connects multiple data servers with the client. The protocol facilitates multiple requests being concurrently outstanding and asynchronous processing of requests. The protocol is designed to exist on top of a transport protocol layer.
    Type: Grant
    Filed: November 20, 2007
    Date of Patent: February 23, 2010
    Assignee: Microsoft Corporation
    Inventors: William J. Bolosky, Craig M Dowell, Robert P. Fitzgerald, Steven P. Levi, Jan de Rie, Richard F. Rashid
  • Publication number: 20090287890
    Abstract: The write optimizer described in this disclosure optimizes write traffic to a disk. The write optimization technique writes small data sets to be written to a disk drive to a log file in write optimized order and rewrites the small data sets to disk drive in read optimized order when the disk drive is idle. The write optimizer reserves a portion of a disk to be used for write performance improvement, and then takes all small writes to the disk and writes them to the reserved area rather than to their intended destination. When the disk becomes idle (or the reserved area full), the write optimizer takes the data that has been written to the reserved area and that has not been subsequently overwritten and copies it to its final location.
    Type: Application
    Filed: May 15, 2008
    Publication date: November 19, 2009
    Applicant: Microsoft Corporation
    Inventor: William J. Bolosky
  • Patent number: 7600126
    Abstract: Efficient processing of time-bound messages is described herein. In an implementation, messages are classified either time-bounded messages or non-time-bounded messages. The time-bounded messages are then processed separately from the non-time-bound messages. Examples of time-bounded messages can include spam e-mails or other types or classes of e-mails subject to a retention policy, such that the are retained only for some set period of time. Metadata relating to the time-bound messages are compiled and stored separately from the messages, thereby enabling optimization of the metadata storage and processing apart from the messages. The time-bounded messages are accumulated before they are processed in bulk, thereby reducing the number if I/O operations consumed by the time-bound messages, and reducing the amount and cost of resources supporting the process of the time-bounded messages.
    Type: Grant
    Filed: May 27, 2005
    Date of Patent: October 6, 2009
    Assignee: Microsoft Corporation
    Inventors: William J. Bolosky, Atul Adya, Ronnie I Chaiken, Marcus Jon Jager
  • Patent number: 7574598
    Abstract: Cryptographic protocols and methods of employing the same are described. The described protocols advantageously enable two or more identical encryptable objects that are coded for encryption with different keys to be identified as identical without access to either the unencrypted objects or the keys that are used in the encryption process. Additionally, the protocols enable two or more identical encryptable objects to be processed with different encryption keys, yet be stored in a manner so that the total required storage space is proportional to the space that is required to store a single encryptable object, plus a constant amount for each distinct encryption key. In various embodiments, the encryptable objects comprise files and the cryptographic protocols enable encrypted files to be used in connection with single instance store (SIS) systems.
    Type: Grant
    Filed: June 10, 2005
    Date of Patent: August 11, 2009
    Assignee: Microsoft Corporation
    Inventors: John R. Douceur, William J. Bolosky, Marvin M. Theimer