Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Obr, WA

Nathan Obr, Bellevue, WA US

Patent application numberDescriptionPublished
20080263259HINTS MODEL FOR OPTIMIZATION OF STORAGE DEVICES CONNECTED TO HOST AND WRITE OPTIMIZATION SCHEMA FOR STORAGE DEVICES - Architecture for data communications optimization based on generating and communicating “intents” or “hints” to a storage device and faster/slower solid state memory optimization. Data destined for storage on the storage device (capable of hints processing) can be bracketed to take advantage of improved performance associated with the hints processing. Data can be communicated in block format such that individual series of block exchanges can occur. Hints processing can be optional at the storage device. When communicated to the storage device firmware facilitates optimization of internal data flow and device operation. A write optimization schema is provided for storage system such as solid state storage devices. For example, frequently-modified data can be stored in faster memory to provide more efficient overall application data processing, and less-frequently modified data can be processed into and out of lower cost (or slower) memory.10-23-2008
20090240678PURPOSING PERSISTENT DATA THROUGH HARDWARE METADATA TAGGING - Storage devices can maintain metadata on a per-block basis, enabling the storage device, the file system, or other higher-level software to store and obtain information about individual blocks of data. A handshake between the storage device and a computing device can include an exchange of feature tables, whereby a commonly supported set of features and attributes can be selected and agreed upon. Such features and attributes can include access pattern specification in the per-block metadata, frequency of access or importance designations and specifications of the longevity of temporary data. The per-block metadata can either be provided by an application or the file system, or it can be generated by the storage device itself. Likewise, per-block metadata can be utilized by the storage device, either on its own or at the behest of an application or the file system, or it can be utilized directly by the application or file system.09-24-2009

Nathan S. Obr, Bellevue, WA US

Patent application numberDescriptionPublished
20080263305REMOVE-ON-DELETE TECHNOLOGIES FOR SOLID STATE DRIVE OPTIMIZATION - Technologies for identifying data stored on a solid state drive (“SSD”) device that correspond to data associated with a delete event, and marking the deleted data stored on the SSD as invalid such that the SSD can avoid unnecessary operations on the invalid data. Included are interfaces operable to communicate invalid data information and providing a remove-on-delete command that provides invalid data information sufficient to identify the SSD data to be marked as invalid.10-23-2008
20080263569COMPOSITE SOLID STATE DRIVE IDENTIFICATION AND OPTIMIZATION TECHNOLOGIES - Technologies for an operating system identifying SSD and CSSD devices based on a corresponding descriptor, and for optimizing operating system functionalities with respect to the SSD/CSSD device. Optimizations include disabling non-SSD/CSSD functionalities, such as HDD defragmentation, and by enabling SSD/CSSD specific functionalities, such as write optimization storage functionalities.10-23-2008
20100299492DISK DRIVE CONDITION REPORTING AND ERROR CORRECTION - A system that facilitates maintaining hard disk drive performance comprises a memory component that includes extensions to at least one protocol associated with a hard disk drive, the extensions enable communications to occur in real-time between an operating system and the hard disk drive. An interface component utilizes the extensions to receive a notification from the hard disk drive and relay the notification to the operating system, the notification relates to an operating parameter of the hard disk drive.11-25-2010

Patent applications by Nathan S. Obr, Bellevue, WA US

Nathan Steven Obr, Bellevue, WA US

Patent application numberDescriptionPublished
20100281233STORAGE OPTIMIZATION ACROSS MEDIA WITH DIFFERING CAPABILITIES - A storage device can comprise storage media that can have differing characteristics. A storage manager can obtain the characteristics of a storage device, and of individual portions, such as individual media, of the storage device, by querying the device, querying a database, or through empirical observation or testing. The storage manager can then divide the media of the storage device into storage media parts, that can comprise some or all of the individual storage media. Data can then be stored on one or more storage media parts in accordance with the information provided by metadata associated with the data, such that the data is stored on storage media parts that are optimal for such data, from among the available storage media parts, based on the information from the associated metadata.11-04-2010
20100292854INTEGRATING ENERGY BUDGETS FOR POWER MANAGEMENT - 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.11-18-2010
20100306484HETEROGENEOUS STORAGE ARRAY OPTIMIZATION THROUGH EVICTION - A storage system can comprise storage devices having storage media with differing characteristics. An eviction handler can receive information regarding the state of storage media or of data stored thereon, as well as information regarding application or operating system usage, or expected usage, of data, or information regarding policy, including user-selected policy. Such information can be utilized by the eviction handler to optimize the use of the storage system by evicting data from storage media, including evicting data in order to perform maintenance on, or replace, such storage media, and evicting data to make room for other data, such as data copied to such storage media to facilitate pre-fetching or implement policy. The eviction handler can be implemented by any one or more of processes executing on a computing device, control circuitry of any one or more of the storage devices, or intermediate storage-centric devices.12-02-2010
20110010487Health Reporting From Non-Volatile Block Storage Device to Processing Device - 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.01-13-2011
20110010569Adaptive Flushing of Storage Data - Methods and a processing device are provided for monitoring a level of power in a power supply of a processing device and changing a data flushing policy, with respect to data to be written to a non-volatile storage device, based on a predicted amount of time until power loss. When the predicted amount of time until power loss is higher than a threshold, as defined by a flushing policy, requests from applications for data flushes of data to a non-volatile storage device may be discarded. When the predicted amount of time remaining until power loss drops below the threshold, the requests from the applications for data flushes of the data to the non-volatile storage device may be honored and the data may be flushed to the non-volatile storage device. In some embodiments, the flushing policy may define additional thresholds.01-13-2011
20110113213PACKED STORAGE COMMANDS AND STORAGE COMMAND STREAMS - A packed command can be received at a storage device. The packed command can include an indicator of a source data location in the storage device and an indicator of a destination data location in the storage device. In response to receiving the packed command, a storage map table in the storage device can be updated. Also, a storage processing guide can be sent to a storage device. The processing guide can include a stream indicator associating the processing guide with a storage command stream. A set of storage commands can also be sent to the storage device. One or more of the commands in the set can each include a stream indicator that matches the stream indicator in the processing guide and identifies the command with the stream.05-12-2011

Nathan Steven Obr, Clyde Hill, WA US

Patent application numberDescriptionPublished
20100077197NON-VOLATILE MEMORY CACHE PERFORMANCE IMPROVEMENT - In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.03-25-2010

Nathan Steven Obr, Seattle, WA US

Patent application numberDescriptionPublished
20110289282Sessions for Direct Attached Storage Devices - A mechanism and a storage device are provided for registering a component of a computing device, with a user-removably attached storage device and managing sessions between the component and the storage device. The storage device may record time information regarding a beginning and an ending of an activity session with the component. The storage device may determine whether at least a logical block address range of a storage device medium, registered by the component, may have been modified by a different component, since a last session with the component. When the storage device indicates to the component that at least the logical block address range of the medium has not been modified since the last session, the component may trust contents of the medium. The computing device may provide time information to the storage device, such that the storage device may determine whether management operations are to be performed.11-24-2011