Patents by Inventor Steven M. Howe

Steven M. Howe 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: 8892807
    Abstract: In an embodiment, a skip read command is received that requests transfer of a requested block from a storage device and that requests non-transfer of a skipped block from the storage device. The skip read command specifies a skip mask that comprises an identification of a location of the requested block relative to a location of the skipped block at the storage device. In response to the skip read command, the requested block and the skipped block are transferred from the storage device by creating a read command that requests transfer of the requested block and the skipped block and sending the read command to the storage device. In various embodiments, the skipped block is transferred to a temporary buffer and not transferred to a destination buffer, or the skipped block is transferred to the destination buffer, but overwritten by a transfer of the requested block to the destination buffer.
    Type: Grant
    Filed: April 18, 2011
    Date of Patent: November 18, 2014
    Assignee: International Business Machines Corporation
    Inventors: William A. Brown, Thomas R. Crowley, Steven M. Howe, Kristopher C. Whitney
  • Publication number: 20120265948
    Abstract: In an embodiment, a skip read command is received that requests transfer of a requested block from a storage device and that requests non-transfer of a skipped block from the storage device. The skip read command specifies a skip mask that comprises an identification of a location of the requested block relative to a location of the skipped block at the storage device. In response to the skip read command, the requested block and the skipped block are transferred from the storage device by creating a read command that requests transfer of the requested block and the skipped block and sending the read command to the storage device. In various embodiments, the skipped block is transferred to a temporary buffer and not transferred to a destination buffer, or the skipped block is transferred to the destination buffer, but overwritten by a transfer of the requested block to the destination buffer.
    Type: Application
    Filed: April 18, 2011
    Publication date: October 18, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: William A. Brown, Thomas R. Crowley, Steven M. Howe, Kristopher C. Whitney
  • Publication number: 20120185658
    Abstract: A method for performing a write operation on a computer system having a main store, including a plurality of pages, and a backing store, the write operation including a processing step for processing data of the write operation and a writing step for writing the processed data to the backing store. The method includes reserving a set of pages, among the plurality of pages, in the main store, retrieving a required number of pages from the reserved set in accordance with the size of the data, processing the required number of pages of the data using the retrieved pages, writing the processed data to the backing store, and returning the retrieved pages to the reserved set upon finishing the writing.
    Type: Application
    Filed: January 18, 2011
    Publication date: July 19, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: William A. Brown, Thomas R. Crowley, Steven M. Howe
  • Patent number: 7380113
    Abstract: A method of upgrading firmware during background operation in a storage area network (SAN) including at least one storage controller having programmable memory and RAM, where the at least one storage controller for controls data access between at least one host server and at least one storage device. The method includes temporarily suspending data access commands from the at least one host server, upgrading firmware stored in programmable memory, and copying a current version of firmware in a first memory address of RAM to a second memory address in the RAM. The current version of firmware in the first memory address in RAM is overwritten with the upgraded version of firmware. The controller is reinitialized, and data access commands from the at least one host server to the at least one storage device are provided by the at least one storage controller.
    Type: Grant
    Filed: May 5, 2003
    Date of Patent: May 27, 2008
    Assignee: Xiotech Corporation
    Inventors: David S. Ebsen, Todd R. Burkey, Steven M. Howe, Randal S. Rysavy
  • Patent number: 7162587
    Abstract: A method, and apparatus for recovering cache data of a failed redundant storage controller and reestablishing redundancy by mirroring cache data of a primary cache memory of a first storage controller in a secondary cache memory of another storage controller. Upon a failure occurring in a storage controller, the failure is detected and, in response, a structured list of cache tags is created in the controller where having the secondary cache that is the mirror of the primary cache of the failed controller.
    Type: Grant
    Filed: May 5, 2003
    Date of Patent: January 9, 2007
    Inventors: Michael S. Hiken, Steven M. Howe, James N. Snead
  • Patent number: 7100080
    Abstract: A method for recovering dirty write cache data after controller power loss or failure from one of two independently battery backed up and mirrored write caches. Two independent controllers jointly operate with a permanent data storage system. Each controller has a write cache that is a mirror of the write cache in the other controller. The primary controller resets a power down flag stored each write cache upon proper shutdown. The primary controller further increments and stores a configuration sequence number into each write cache upon proper shutdown. If a primary controller powers up and identifies that the write cache was not properly shutdown due to the state of the power down flag, it flushes the dirty data in the write cache only if the configuration sequence number contained in the write cache is the same as the configuration sequence number contained in the primary controller.
    Type: Grant
    Filed: May 5, 2003
    Date of Patent: August 29, 2006
    Assignee: Xiotech Corporation
    Inventor: Steven M. Howe
  • Publication number: 20040153727
    Abstract: A method, and apparatus for recovering cache data of a failed redundant storage controller and reestablishing redundancy by mirroring cache data of a primary cache memory of a first storage controller in a secondary cache memory of another storage controller. Upon a failure occurring in a storage controller, the failure is detected and, in response, a structured list of cache tags is created in the controller where having the secondary cache that is the mirror of the primary cache of the failed controller.
    Type: Application
    Filed: May 5, 2003
    Publication date: August 5, 2004
    Inventors: Michael S. Hicken, Steven M. Howe, James N. Snead
  • Publication number: 20030217257
    Abstract: A method of upgrading firmware during background operation in a storage area network (SAN) including at least one storage controller having programmable memory and RAM, where the at least one storage controller for controls data access between at least one host server and at least one storage device. The method includes temporarily suspending data access commands from the at least one host server, upgrading firmware stored in programmable memory, and copying a current version of firmware in a first memory address of RAM to a second memory address in the RAM. The current version of firmware in the first memory address in RAM is overwritten with the upgraded version of firmware. The controller is reinitialized, and data access commands from the at least one host server to the at least one storage device are provided by the at least one storage controller.
    Type: Application
    Filed: May 5, 2003
    Publication date: November 20, 2003
    Inventors: David S. Ebsen, Todd R. Burkey, Steven M. Howe, Randal S. Rysavy
  • Publication number: 20030212921
    Abstract: A method for recovering dirty write cache data after controller power loss or failure from one of two independently battery backed up and mirrored write caches. Two independent controllers jointly operate with a permanent data storage system. Each controller has a write cache that is a mirror of the write cache in the other controller. The primary controller resets a power down flag stored each write cache upon proper shutdown. The primary controller further increments and stores a configuration sequence number into each write cache upon proper shutdown. If a primary controller powers up and identifies that the write cache was not properly shutdown due to the state of the power down flag, it flushes the dirty data in the write cache only if the configuration sequence number contained in the write cache is the same as the configuration sequence number contained in the primary controller.
    Type: Application
    Filed: May 5, 2003
    Publication date: November 13, 2003
    Inventor: Steven M. Howe
  • Patent number: 6145052
    Abstract: A method for selecting a next command to execute from a set of SCSI commands where the commands are gracefully aged and performance of a disk drive is improved. An execution threshold age, a pool threshold age, and an age threshold age are used to determine what command is executed next. A mechanical time delay is calculated for a command based on the time required to position the read/write head over the data location requested in each command. A command age is calculated based on a current time and the time the command was received from the host. The command age is checked against the execution threshold age and pool threshold age. Any commands that have aged beyond the execution threshold age are executed. If the oldest command has aged beyond the age threshold age, then any command that has both aged beyond the pool threshold age and has the smallest mechanical time delay is executed, otherwise the command with the smallest mechanical time delay is executed.
    Type: Grant
    Filed: November 4, 1997
    Date of Patent: November 7, 2000
    Assignee: Western Digital Corporation
    Inventors: Steven M. Howe, Jeffrey L. Williams
  • Patent number: 6105104
    Abstract: A method of mapping sequential logical data blocks to multiple disk surfaces. Data blocks are written to a predetermined number of adjacent tracks on each surface before performing a head switch to write data on another surface. The predetermined number of tracks are written on each surface in turn before performing a seek and head switch to continue writing on another predetermined number of tracks on each surface. After each head switch to continue writing from the radial position reached when writing the previous group of tracks, the direction of track incrementing or decrementing reverses so that the actuator moves back and forth in a "serpentine" manner.
    Type: Grant
    Filed: October 20, 1997
    Date of Patent: August 15, 2000
    Assignee: Western Digital Corporation
    Inventors: James Edward Guttmann, Mark David Heminger, Michael Scott Hicken, Steven M. Howe, Timothy Swatosh
  • Patent number: 6092149
    Abstract: A magnetic disk drive with a caching system includes an intelligent interface to communicate with a host, a magnetic disk and a cache memory to buffer data transferred to and from the host. The caching system maximizes drive performance based on past access history. The caching system alters execution of commands by coalescing commands or executing internal commands in parallel. The caching system anticipates data requests by using a prefetch to store data that may be requested. The caching system divides the cache memory into segments to store multiple streams of data. The number of segments may be continuously adapted according to the types of access to maximize performance by maintaining a segment for each sequential stream of data. The caching system uses a dynamic priority list to determine segments to maintain and discard. Each segment is monitored to determine access types such as sequential, random, and repeating.
    Type: Grant
    Filed: May 28, 1997
    Date of Patent: July 18, 2000
    Assignee: Western Digital Corporation
    Inventors: Michael Scott Hicken, Steven M. Howe, Daniel John Sokolov, Timothy Swatosh, Jeffrey L. Williams
  • Patent number: 5970508
    Abstract: A method is provided for managing a cache in a disk drive having an intelligent interface for communicating with a host. The drive includes a magnetic disk, and the cache is divisible into a number of segments, and employs a cache control structure including cache parameters. The drive receives a first command and a second command. The method comprises the steps of: performing a scan of the cache to assign the first command to a segment; compensating the cache parameters in response to the scan; and performing a scan to assign the second command to a cache segment prior to caching of data requested in the first command.
    Type: Grant
    Filed: June 24, 1997
    Date of Patent: October 19, 1999
    Assignee: Western Digital Corporation
    Inventors: Steven M. Howe, Daniel John Sokolov