Patents by Inventor Nathan Obr
Nathan Obr 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: 10162534Abstract: Systems and methods for utilization of notification or ordering commands are disclosed that can enable more efficient processing of flush requests from software programs and increase data consistency in storage devices. A data storage device or system may include a non-volatile memory, a memory comprising a data cache and a controller. The controller may be configured to receive an ordering command requesting commitment to the non-volatile memory of cached data items associated with a first identifier prior to commitment of cached data items associated with a second identifier, and to delay commitment of the second data item to the non-volatile memory until commitment of the first data item to the non-volatile memory, based at least in part on the ordering command. The controller may be further configured to select data items from the data cache for commitment to the non-volatile memory in accordance with native command queuing (NCQ).Type: GrantFiled: April 6, 2017Date of Patent: December 25, 2018Assignee: Western Digital Technologies, Inc.Inventor: Nathan Obr
-
Patent number: 9645752Abstract: Systems and methods for utilization of notification or ordering commands are disclosed that can enable more efficient processing of flush requests from software programs and increase data consistency in storage devices. A storage device can obtain a notification command from a host system identifying one or more data items in a cache of the storage device, determine whether the one or more data items have been committed to non-volatile memory of the storage device, and transmit a notification to the host system upon determining that the one or more data items have been committed. The host system may utilize these commands to process flush requests, such that upon receiving a flush request, a notification command may be issued requesting a notification from the storage device that the relevant data has been committed.Type: GrantFiled: July 2, 2014Date of Patent: May 9, 2017Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventor: Nathan Obr
-
Patent number: 9632711Abstract: Systems and methods for utilization of notification or ordering commands are disclosed that can enable more efficient processing of flush requests from software programs and increase data consistency in storage devices. For example, when an application requests that a data cache be flushed, a computing device may—instead of completely emptying the data cache—notify the application of a successful flush once relevant data of the application has been committed to non-volatile memory. Targeted notifications, which may identify the relevant data in the data cache, can limit the scope of a flush request, such that the speed and efficiency of the command is increased relative to a non-specific full-cache flush. Such increases in efficiency of flush requests may greatly increase the speed and efficiency of storage devices, and consequently the performance of programs utilizing such storage devices.Type: GrantFiled: July 2, 2014Date of Patent: April 25, 2017Assignee: Western Digital Technologies, Inc.Inventor: Nathan Obr
-
Patent number: 8214343Abstract: 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.Type: GrantFiled: March 19, 2008Date of Patent: July 3, 2012Assignee: Microsoft CorporationInventors: Vladimir Sadovsky, Nathan Obr
-
Patent number: 7853759Abstract: 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.Type: GrantFiled: September 17, 2007Date of Patent: December 14, 2010Assignee: Microsoft CorporationInventors: Vladimir Sadovsky, Robin Alexander, Frank Shu, Nathan Obr
-
Publication number: 20090240678Abstract: 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.Type: ApplicationFiled: March 19, 2008Publication date: September 24, 2009Applicant: MICROSOFT CORPORATIONInventors: Vladimir Sadovsky, Nathan Obr
-
Publication number: 20080263259Abstract: 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.Type: ApplicationFiled: September 17, 2007Publication date: October 23, 2008Applicant: MICROSOFT CORPORATIONInventors: Vladimir Sadovsky, Robin Alexander, Frank Shu, Nathan Obr
-
Publication number: 20060282709Abstract: 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.Type: ApplicationFiled: December 8, 2005Publication date: December 14, 2006Applicant: Microsoft CorporationInventors: Frank Shu, Nathan Obr, Yi Meng
-
Publication number: 20050246487Abstract: 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.Type: ApplicationFiled: May 3, 2004Publication date: November 3, 2005Applicant: Microsoft CorporationInventors: Cenk Ergan, Clark Nicholson, Dan Teodosiu, Dean DeWhitt, Emily Hill, Hanumantha Kodavalla, Michael Zwilling, John Parchem, Michael Fortin, Nathan Obr, Rajeev Nagar, Surenda Verma, Therron Powell, William Westerinen, Mark Zbikowski, Patrick Stemen