Patents by Inventor Vladimir Sadovsky
Vladimir Sadovsky 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: 9261933Abstract: Power consumption of a device (e.g., flash storage driver, hard drive, etc.) connected to a host computer system is managed to promote efficient power usage and improved service. Communication between a host computer system (e.g., an operating system) and a device is enabled so that the host system can ascertain a power footprint of the device. Taking the power footprint of the device into consideration, along with the power consumption of the system as a whole (e.g., including the power consumption needs of other devices), a power manager can provide a power budget to the device based upon an informed decision. This allows for improved system power management through a coordination of the device's power consumption by the host system, specifically during operation allowing device performance to be enhanced for the task at hand.Type: GrantFiled: April 8, 2013Date of Patent: February 16, 2016Assignee: Microsoft Technology Licensing, LLCInventors: David Burg, Nathan Steven Obr, Vladimir Sadovsky
-
Patent number: 9111103Abstract: An access control device can be communicationally coupled to a storage device and can control access thereto. The access control device can comprise information, such as identities of authorized entities, to enable the access control device to independently determine whether to provide access to an associated storage device. Alternatively, the access control device can comprise information to establish a secure connection to an authorization computing device and the access control device can implement the decisions of the authorization computing device. The access control device can control access by instructing a storage device to execute specific firmware instructions to prevent meaningful responses to data storage related requests. The access control device can also comprise storage-related cryptographic information utilized by the storage device to encrypt and decrypt data.Type: GrantFiled: November 26, 2012Date of Patent: August 18, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Vladimir Sadovsky, Sompong Paul Olarig, Chris Lionetti, James Robert Hamilton
-
Patent number: 9104534Abstract: Providing for a paradigm shift in block-level abstraction for storage devices is described herein. At a block-level, storage is characterized as a variable size data record, rather than a fixed size sector. In some aspects, the variable size data record can comprise a variable binary key-data pair, for addressing and identifying a variable size block of data, and for dynamically specifying the size of such block in terms of data storage. By changing the key or data values, the location, identity or size of block-level storage can be modified. Data records can be passed to and from the storage device to facilitate operational commands over ranges of such records. Block-level data compression, space management and transactional operations are provided, mitigating a need of higher level systems to characterize underlying data storage for implementation of such operations.Type: GrantFiled: February 11, 2013Date of Patent: August 11, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Soner Terek, Vladimir Sadovsky, Surendra Verma, Avi R. Geiger
-
Patent number: 8990634Abstract: Methods and a computing device are disclosed. A computing device may include a managed device having embedded firmware. When a failure occurs with respect to the managed device, drivers within the computing device may collect failure data from a driver stack of the computing device and from the managed device. The computing device may send the collected failure data to one or more second computing devices to be stored and analyzed. The computing device may include a health monitor for periodically collecting telemetry data from the computing device and the managed device. When the health monitor becomes aware of conditions indicative of a possible impending failure, the health monitor may trigger collection of sickness telemetry data from the computing device and the managed device. Collected data from the managed device may be made available to a vendor of the managed device.Type: GrantFiled: November 3, 2010Date of Patent: March 24, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Vladimir Sadovsky, Vincent Orgovan, Jr., Nathan Steven Obr, Scott Chao-Chueh Lee
-
Publication number: 20150040206Abstract: Processes for identifying and recovering a lost transient storage device are provided. In some processes, information regarding the owner of the device is obtained. The device ownership information may be stored on a remote service with which the device is registered and/or may be stored on the device itself. In one process, the remote service provides the device with customized device-executable code when the device is registered. The device may also contain information regarding trusted systems. The process includes obtaining status information indicating whether a device is lost when the device is connected to a host system. In some processes, the status is determined by a remote service. In other processes, the status is determined by the device. If the device is lost then a device recovery plan is executed. Portions of a device recovery plan may be executed on the remote service, the host system, and/or the device.Type: ApplicationFiled: October 15, 2014Publication date: February 5, 2015Inventors: Janet Schneider, Emily Wilson, Vladimir Sadovsky, Robin Alexander
-
Publication number: 20140359206Abstract: Methods and devices are provided for adapting an I/O pattern, with respect to a processing device using a non-volatile block storage device based on feedback from the non-volatile block storage device. The feedback may include information indicating a status of the non-volatile block storage device. In response to receiving the feedback, a storage subsystem, included in an operating system executing on processing device, may change a behavior with respect to the non-volatile block storage device in order to avoid, or reduce, a negative impact to the non-volatile block storage device or to enhance an aspect of the non-volatile block storage device. The feedback may include performance information and/or operating environmental information of the non-volatile block storage device. When the non-volatile block storage device is not capable of providing the feedback, the processing device may request information about the non-volatile block storage device from a database service.Type: ApplicationFiled: August 15, 2014Publication date: December 4, 2014Inventors: Vladimir Sadovsky, Nathan Steven Obr, James C. Bovee, Robin A. Alexander
-
Patent number: 8881309Abstract: Processes for identifying and recovering a lost transient storage device are provided. In some processes, information regarding the owner of the device is obtained. The device ownership information may be stored on a remote service with which the device is registered and/or may be stored on the device itself. In one process, the remote service provides the device with customized device-executable code when the device is registered. The device may also contain information regarding trusted systems. The process includes obtaining status information indicating whether a device is lost when the device is connected to a host system. In some processes, the status is determined by a remote service. In other processes, the status is determined by the device. If the device is lost then a device recovery plan is executed. Portions of a device recovery plan may be executed on the remote service, the host system, and/or the device.Type: GrantFiled: March 4, 2008Date of Patent: November 4, 2014Assignee: Microsoft CorporationInventors: Janet Schneider, Emily Wilson, Vladimir Sadovsky, Robin Alexander
-
Publication number: 20140310451Abstract: Techniques for block storage using a hybrid memory device are described. In at least some embodiments, a hybrid memory device includes a volatile memory portion, such as dynamic random access memory (DRAM). The hybrid memory device further includes non-volatile memory portion, such as flash memory. In at least some embodiments, the hybrid memory device can be embodied as a non-volatile dual in-line memory module, or NVDIMM. Techniques discussed herein employ various functionalities to enable the hybrid memory device to be exposed to various entities as an available block storage device.Type: ApplicationFiled: April 12, 2013Publication date: October 16, 2014Applicant: MICROSOFT CORPORATIONInventors: Scott Chao-Chueh Lee, Robin A. Alexander, Lee E. Prewitt, Chiuchin Chen, Vladimir Sadovsky
-
Patent number: 8812970Abstract: Processes for presenting a current state of a device having device storage connected with a host system are provided. In some processes, device manufacturers or vendors define a set of operational states of a device and provide user interface (UI) elements of a custom representation of each state through information stored in the device storage. Initially, the set of states of the device and UI elements associated with each state are received from the device storage. Information regarding a current state is received from the device, and a representation of the current state, which includes the received UI elements, is presented on the host system. In other processes, UI elements of a representation of each state are obtained from a remote system using device identification information. In other processes, UI elements from the device, from the host system, and/or from a remote system are combined to form a state representation.Type: GrantFiled: February 27, 2008Date of Patent: August 19, 2014Assignee: Microsoft CorporationInventors: Robin Alexander, Vladimir Sadovsky, Narasimhan Ramasubramanian
-
Patent number: 8812770Abstract: Methods and devices are provided for adapting an I/O pattern, with respect to a processing device using a non-volatile block storage device based on feedback from the non-volatile block storage device. The feedback may include information indicating a status of the non-volatile block storage device. In response to receiving the feedback, a storage subsystem, included in an operating system executing on processing device, may change a behavior with respect to the non-volatile block storage device in order to avoid, or reduce, a negative impact to the non-volatile block storage device or to enhance an aspect of the non-volatile block storage device. The feedback may include performance information and/or operating environmental information of the non-volatile block storage device. When the non-volatile block storage device is not capable of providing the feedback, the processing device may request information about the non-volatile block storage device from a database service.Type: GrantFiled: July 13, 2009Date of Patent: August 19, 2014Assignee: Microsoft CorporationInventors: Vladimir Sadovsky, Nathan Steven Obr, James C. Bovee, Robin A. Alexander
-
Patent number: 8806114Abstract: A data block may be moved between a first medium and a second medium. The movement of the data block involves measuring the access characteristic of the data block as the data block is stored on the first medium. The performance characteristics of the first medium and the second medium are then determined, in which each performance characteristic has a static performance characteristic component and a dynamic performance characteristic component. Alternatively or concurrently, the static performance characteristic components of the first medium and the second medium may be compared, and the dynamic performance characteristic components of the first medium and the second medium are compared. Accordingly, the data block is moved from the first medium to the second medium when at least one of these comparisons indicate that the second medium is more suitable for storing the data block having the access characteristic than the first medium.Type: GrantFiled: January 11, 2013Date of Patent: August 12, 2014Assignee: Microsoft CorporationInventors: James R. Hamilton, Vladimir Sadovsky
-
Patent number: 8713090Abstract: Enhancing user experiences using aggregated device usage data includes receiving aggregated usage data for a device, such as a computing device and/or a peripheral device. A current user context for the device is identified, and based on the aggregated usage data and the current user context an enhanced user interface is generated.Type: GrantFiled: December 15, 2006Date of Patent: April 29, 2014Assignee: Microsoft CorporationInventors: Vladimir Sadovsky, Michael D. Stokes, Jonathan R. Schwarz
-
Publication number: 20140089278Abstract: Embodiments of the present disclosure provide for a method and system for storing content based on one or more attributes associated with the content. Specifically, the present disclosure provides for determining storage capabilities of one or more storage devices associated with a computing device and also determining a retention policy associated with the content. In certain embodiments, the retention policy is identified by the one or more attributes. When the retention policy and the capabilities of the one or more storage devices have been determined, the content is written to the one or more storage devices based on the retention policy.Type: ApplicationFiled: September 24, 2012Publication date: March 27, 2014Applicant: Microsoft CorporationInventors: Dan Lovinger, Spencer Shepler, Vladimir Sadovsky
-
Patent number: 8566689Abstract: An integrity unit can be calculated from a first data unit, and a first storage device can be requested to store the first data unit. A second storage device, which can be separate from and/or a different type of device from the first storage device, can be requested to store metadata, which includes the integrity unit, in nonvolatile memory. Also, a second data unit can be received from the first storage device in response to a request for the first data unit. The integrity unit can be received from the second storage device, and the second data unit and the integrity unit can be analyzed to determine whether the second data unit matches the first data unit. Alternatively, a first integrity unit can be stored in a metadata region of a nonvolatile memory block, where the block also stores the data from which the first integrity unit was calculated.Type: GrantFiled: October 22, 2009Date of Patent: October 22, 2013Assignee: Microsoft CorporationInventors: Shiv K. Rajpal, Vladimir Sadovsky, Robin A. Alexander
-
Patent number: 8433931Abstract: Power consumption of a device (e.g., flash storage driver, hard drive, etc.) connected to a host computer system is managed to promote efficient power usage and improved service. Communication between a host computer system (e.g., an operating system) and a device is enabled so that the host system can ascertain a power footprint of the device. Taking the power footprint of the device into consideration, along with the power consumption of the system as a whole (e.g., including the power consumption needs of other devices), a power manager can provide a power budget to the device based upon an informed decision. This allows for improved system power management through a coordination of the device's power consumption by the host system, specifically during operation allowing device performance to be enhanced for the task at hand.Type: GrantFiled: May 13, 2009Date of Patent: April 30, 2013Assignee: Microsoft CorporationInventors: David Burg, Nathan Steven Obr, Vladimir Sadovsky
-
Patent number: 8375190Abstract: The invention relates to an architecture for optimization that can leverage the several advantages of flash memory or hard disk technology, while simultaneously compensating for associated disadvantages. In a system with a flash module and a hard disk, respective memory can be dynamically allocated as a function of demand, preference, or utilization of respective applications in order to optimize overall system performance.Type: GrantFiled: December 11, 2007Date of Patent: February 12, 2013Assignee: Microsoft CorporationInventors: James R. Hamilton, Vladimir Sadovsky
-
Patent number: 8375227Abstract: Providing for a paradigm shift in block-level abstraction for storage devices is described herein. At a block-level, storage is characterized as a variable size data record, rather than a fixed size sector. In some aspects, the variable size data record can comprise a variable binary key-data pair, for addressing and identifying a variable size block of data, and for dynamically specifying the size of such block in terms of data storage. By changing the key or data values, the location, identity or size of block-level storage can be modified. Data records can be passed to and from the storage device to facilitate operational commands over ranges of such records. Block-level data compression, space management and transactional operations are provided, mitigating a need of higher level systems to characterize underlying data storage for implementation of such operations.Type: GrantFiled: February 2, 2009Date of Patent: February 12, 2013Assignee: Microsoft CorporationInventors: Soner Terek, Vladimir Sadovsky, Surendra Verma, Avi R. Geiger
-
Patent number: 8332751Abstract: In accordance with certain aspects of the removal of redundant information from electronic documents, a package for an electronic document includes a plurality of parts. The package is accessed, and redundant information in one or more of the plurality of parts is identified. The identified redundant information is removed from the package.Type: GrantFiled: November 14, 2006Date of Patent: December 11, 2012Assignee: Microsoft CorporationInventors: Vladimir Sadovsky, Michael D. Stokes, Joseph D. Ternasky, Hubert Van Hoof
-
Patent number: 8321956Abstract: An access control device can be communicationally coupled to a storage device and can control access thereto. The access control device can comprise information, such as identities of authorized entities, to enable the access control device to independently determine whether to provide access to an associated storage device. Alternatively, the access control device can comprise information to establish a secure connection to an authorization computing device and the access control device can implement the decisions of the authorization computing device. The access control device can control access by instructing a storage device to execute specific firmware instructions to prevent meaningful responses to data storage related requests. The access control device can also comprise storage-related cryptographic information utilized by the storage device to encrypt and decrypt data.Type: GrantFiled: June 17, 2009Date of Patent: November 27, 2012Assignee: Microsoft CorporationInventors: Vladimir Sadovsky, Sompong Paul Olarig, Chris Lionetti, James Robert Hamilton
-
Patent number: 8286015Abstract: A multi-device storage system can be arranged into power saving systems by placing one or more storage devices into a reduced power consuming state when the storage activity associated with the system is sufficiently reduced that an attendant decrease in throughput will not materially affect users of the storage system. Where data redundancy is provided for, a redundant storage device can be placed into the reduced power consuming state and its redundancy responsibilities can be transitioned to a partition of a larger storage device. Such transitions can be based on specific parameters, such as write cycles or latency, crossing thresholds, including upper and lower thresholds, they can also be based on pre-set times, or a combination thereof. Lifecycle information, including lifecycle information collected in real-time by storage devices on a block-by-block basis, can be utilized to obtain historical empirical data from which to select the pre-set times.Type: GrantFiled: June 3, 2009Date of Patent: October 9, 2012Assignee: Microsoft CorporationInventors: Sompong Paul Olarig, Chris Lionetti, Shiv Rajpal, Vladimir Sadovsky