Patents by Inventor James Perry Jackson

James Perry Jackson 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: 7761663
    Abstract: A unit of data is read from memory of a replicated cache. The replicated cache comprises a plurality of independent computing devices. Each independent computing device comprises a processor and a portion of the memory. Confirmations are received from at least a majority of the independent computing devices that a flush operation for the unit of data was initiated no later than a time indicated by the timestamp and that a more recent version of the unit of data has not been flushed. The unit of data is provided to storage.
    Type: Grant
    Filed: February 16, 2006
    Date of Patent: July 20, 2010
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Svend Frolund, Arif Merchant, Alistair Veitch, James M. Reuter, James Perry Jackson
  • Patent number: 7725655
    Abstract: Data blocks are read from a distributed cache. The distributed cache comprises m replicated caches, each replicated cache including a plurality of independent computing devices. Each independent computing device of the replicated caches holds a replica of a particular one of the m data blocks in memory. The m data blocks and p parity blocks are stored across m plus p independent computing devices. Each of the m plus p independent computing devices stores a single block selected from the m data blocks and the p parity blocks.
    Type: Grant
    Filed: February 16, 2006
    Date of Patent: May 25, 2010
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Svend Frolund, Arif Merchant, Alistair Veitch, James M. Reuter, James Perry Jackson
  • Patent number: 6633957
    Abstract: In a data storage system a number of records are prefetched from large volume storage devices for transfer to a cache in order to return requested records to a host computer in response to a read request from the host computer. If a previous prefetch is not complete when the read request is received, the number of records in a next prefetch of records is increased by a preset amount. If a previous prefetch is complete, a next prefetch of records is initiated with the same number of records in the prefetch as the previous prefetch. The initiation of prefetch operations is triggered by detection of a sequential read stream in a plurality of read requests from the host computer. When the prefetch size is increased, the preset amount of the increase equals the number of records in the read request from the host computer. After requested records are returned from the cache to the host computer in response to the read request, storage space in the cache used by the returned requested records is released.
    Type: Grant
    Filed: May 1, 2001
    Date of Patent: October 14, 2003
    Assignee: Hewlett-Packard Development Company, LP.
    Inventors: Kenneth Hoffman Bates, Jr., Susan Gaye Elkington, James Perry Jackson, Clark Edward Lubbers, John Franklin Mertz, Bradford Scott Morgan
  • Publication number: 20010016897
    Abstract: In a data storage system a number of records are prefetched from large volume storage devices for transfer to a cache in order to return requested records to a host computer in response to a read request from the host computer. If a previous prefetch is not complete when the read request is received, the number of records in a next prefetch of records is increased by a preset amount. If a previous prefetch is complete, a next prefetch of records is initiated with the same number of records in the prefetch as the previous prefetch. The initiation of prefetch operations is triggered by detection of a sequential read stream in a plurality of read requests from the host computer. When the prefetch size is increased, the preset amount of the increase equals the number of records in the read request from the host computer. After requested records are returned from the cache to the host computer in response to the read request, storage space in the cache used by the returned requested records is released.
    Type: Application
    Filed: May 1, 2001
    Publication date: August 23, 2001
    Inventors: Kenneth Hoffman Bates, Susan Gaye Elkington, James Perry Jackson, Clark Edward Lubbers, John Franklin Mertz, Bradford Scott Morgan
  • Patent number: 6253289
    Abstract: In a data storage system a number of records are prefetched from large volume storage devices for transfer to a cache in order to return requested records to a host computer in response to a read request from the host computer. If a previous prefetch is not complete when the read request is received, the number of records in a next prefetch of records is increased by a preset amount. If a previous prefetch is complete, a next prefetch of records is initiated with the same number of records in the prefetch as the previous prefetch. The initiation of prefetch operations is triggered by detection of a sequential read stream in a plurality of read requests from the host computer. When the prefetch size is increased, the preset amount of the increase equals the number of records in the read request from the host computer. After requested records are returned from the cache to the host computer in response to the read request, storage space in the cache used by the returned requested records is released.
    Type: Grant
    Filed: May 29, 1998
    Date of Patent: June 26, 2001
    Assignee: Compaq Computer Corporation
    Inventors: Kenneth Hoffman Bates, Jr., Susan Gaye Elkington, James Perry Jackson, Clark Edward Lubbers, John Franklin Mertz, Bradford Scott Morgan
  • Patent number: 6161192
    Abstract: Metadata described herein on a RAID array includes both device metadata and RAIDset metadata. The device metadata has a device FE bit on each storage device corresponding to each RAID protected block on the storage device. The device FE bit indicates if a corresponding RAID protected block is consistent and thereby useable to regenerate data in another RAID protected block in the corresponding RAID protected block's sliver. The user data also has a forced error bit to indicate if a physical block in the user block has inconsistent data, the RAIDset FE bit. The RAID array of storage devices has user data blocks on each storage device RAID protected by being distributed as slivers of blocks across the RAID array of storage devices. Each sliver has a plurality of user data blocks and one parity block. The RAIDset metadata has the RAIDset FE bit corresponding to each RAID protected user data block in the RAID array.
    Type: Grant
    Filed: October 13, 1995
    Date of Patent: December 12, 2000
    Assignee: Compaq Computer Corporation
    Inventors: Clark E. Lubbers, Stephen J. Sicola, Ronald H. McLean, James Perry Jackson, Robert A. Ellis
  • Patent number: 5933592
    Abstract: A RAID array includes redundant storage devices. Data is distributed across the storage devices, and organized as slivers of RAID protected data blocks. This redundancy provides for the reconstruction of valid data when data at a particular data block of a sliver is found to be inconsistent. However, when more than one data block of a sliver is found to have inconsistent data, reconstruction of the inconsistent data blocks may not be possible. Nonetheless, data consistency can still be restored to that sliver. Consistency is restored to such a sliver by replacing any inconsistent data in a data block with predetermined data and reconstructing the parity data block using the predetermined data. Other data in the RAID array keeps track of those data blocks with the predetermined data to indicate that such blocks do not contain valid data.
    Type: Grant
    Filed: October 13, 1995
    Date of Patent: August 3, 1999
    Assignee: Digital Equipment Corporation
    Inventors: Clark E. Lubbers, Stephen J. Sicola, Ronald H. McLean, James Perry Jackson, Robert A. Ellis
  • Patent number: 5826001
    Abstract: A data block in a RAID array is reconstructed under the control of metadata recorded on the RAID array. The RAID array has a plurality of members, each member being a data storage device. The metadata includes device metadata for data blocks recorded on each member and RAIDset metadata for RAID protected data blocks recorded across the members of the RAID array. The RAID protected data blocks include user data blocks, RAIDset metadata blocks and parity data blocks. The data blocks are reconstructed by detecting from a device FE bit in the device metadata that a bad data block corresponding to or associated with the device FE bit needs to be reconstructed. The data is read from each data block, other than the bad data block, in the same RAID sliver with bad data block. A RAID sliver of data blocks includes all the data blocks in a RAID protected sliver of data blocks.
    Type: Grant
    Filed: October 13, 1995
    Date of Patent: October 20, 1998
    Assignee: Digital Equipment Corporation
    Inventors: Clark E. Lubbers, Stephen J. Sicola, Ronald H. McLean, James Perry Jackson, Robert A. Ellis