Patents Examined by Nicholas Simonetti
  • Patent number: 8140824
    Abstract: A computer program product comprises a computer useable medium having a computer readable program for authentication of code, such as boot code. A memory addressing engine is employable to select a portion of a memory, as a function of a step value, as a first input hash value. The step value allows for the non-commutative cumulative hashing of a plurality of memory portions with a second input hash value, such as a previous hash value that has been rotated left. An authenticator circuit is employable to perform a hash upon the portion of memory and the second input hash value. A comparison circuit is then employable to compare an output of the authenticator circuit to an expected value.
    Type: Grant
    Filed: March 15, 2007
    Date of Patent: March 20, 2012
    Assignee: International Business Machines Corporation
    Inventor: David J. Craft
  • Patent number: 8117408
    Abstract: A buffer that is state-aware and/or node-oriented. In a state-aware buffer, one or more operations relating to a state can be performed. In a node-oriented buffer, instances of a node can be accessed without regard to an object structure in which the instance is included.
    Type: Grant
    Filed: May 10, 2007
    Date of Patent: February 14, 2012
    Assignee: SAP AG
    Inventors: Henrik Saterdag, Renzo Colle, Daniel Zoch
  • Patent number: 8112601
    Abstract: A data storage device is disclosed with at least two partitions and a set of switches to separately enable and disable read and write operations to each of the partitions, wherein read and/or write operations for at least one of the partitions is disabled when the data storage device is accessible by one or more potentially malicious processes. In one embodiment, there are five partitions for (1) operating systems and trusted applications, (2) applications from non-trusted sources, (3) confidential data, (4) non-confidential data, and (5) all other data. A mode switch can be used to enable and disable reading and writing for each of the partitions according to a predetermined set of rules that effectively prevent viruses and other malware from altering or accessing programs and data.
    Type: Grant
    Filed: November 10, 2008
    Date of Patent: February 7, 2012
    Inventor: Jasim Saleh Al-Azzawi
  • Patent number: 8090920
    Abstract: A recording medium stores contents and contents keys to be used for encrypting the contents, in a plurality of storage formats. The storage formats include a storage format (a first format) for delivered contents acquired through a network, and a storage format (a second format) for local contents acquired by a method other than the delivery. The intrinsic storage formats of the contents to be stored in the recording medium are determined according to the kinds of the contents. The recording medium stores not only the contents and the contents keys but also original storage format information (an import flag) (851) which is information indicating the intrinsic storage formats of the contents. With reference to the original storage format information, a reproduction device selects a reproduction method in accordance with the intrinsic storage formats of the contents.
    Type: Grant
    Filed: July 5, 2005
    Date of Patent: January 3, 2012
    Assignee: Panasonic Corporation
    Inventors: Hirokazu So, Makoto Ochi, Takuji Maeda, Masato Suto, Kazuya Fujimura, Shinji Inoue, Yukiko Inoue
  • Patent number: 8069311
    Abstract: A method includes detecting a cache miss. The method further includes, in response to detecting the cache miss, traversing a plurality of linked memory nodes in a memory storage structure being used to store data to determine if the memory storage structure is a binary tree. The method further includes, in response to determining that the memory storage structure is a binary tree, prefetching data from the memory storage structure. An associated machine readable medium is also disclosed.
    Type: Grant
    Filed: December 28, 2007
    Date of Patent: November 29, 2011
    Assignee: Intel Corporation
    Inventor: Mingqiu Sun
  • Patent number: 8001345
    Abstract: A method, device, and system are provided for determining when to re-initialize a backing store in a data storage system. More specifically, when all snapshots associated with a specified backing store are either being deleted or are marked for deletion the backing store is re-initialized rather than deleting each snapshot independently. The re-initialization of the backing store provides for a quicker way to delete all snapshots than can be achieved by deleting each snapshot independently.
    Type: Grant
    Filed: May 10, 2007
    Date of Patent: August 16, 2011
    Assignee: Dot Hill Systems Corporation
    Inventors: James George Wayda, Kent Lee, Ngoclan Thi Vu, Elizabeth G. Rodriguez
  • Patent number: 7991942
    Abstract: A solution for managing a storage device based on a flash memory is proposed. A corresponding method starts with the step for mapping a logical memory space of the storage device (including a plurality of logical blocks) on a physical memory space of the flash memory (including a plurality of physical blocks, which are adapted to be erased individually). The physical blocks include a set of first physical blocks (corresponding to the logical blocks) and a set of second—or spare—physical blocks (for replacing each bad physical block that is unusable). The method continues by detecting each bad physical block. Each bad physical block is then discarded, so to prevent using the bad physical block for mapping the logical memory space.
    Type: Grant
    Filed: May 9, 2007
    Date of Patent: August 2, 2011
    Assignees: STMicroelectronics S.R.L., STMicroelectronics Pvt. Ltd.
    Inventors: Sudeep Biswas, Angelo Di Sena, Domenico Manna
  • Patent number: 7949852
    Abstract: The correspondence between logical addresses and physical addresses is determined so that the logical addresses in ascending order may be assigned to the physical addresses in ascending order with the physical addresses of defective blocks in a memory skipped. Then, the physical addresses of the defective blocks in ascending order are sequentially stored into the second blocks in ascending order of the physical addresses of the second blocks, respectively. To obtain a physical address from a logical address, a target block is retrieved out of a plurality of second blocks on the basis of the logical address, and the physical address of the target block is added to the logical address to obtain the physical address. Thus, it is possible to reduce the required capacity of a reserve storage region used for conversion of logical addresses into physical addresses without deteriorating the access speed.
    Type: Grant
    Filed: February 19, 2008
    Date of Patent: May 24, 2011
    Assignee: MegaChips Corporation
    Inventor: Shinji Tanaka
  • Patent number: 7949850
    Abstract: A method includes determining an amount of memory space in a memory device available for memory mirroring. The method further includes presenting the available memory space to an operating system. The method further includes selecting at least a portion of the amount of memory space to be used for memory mirroring with the operating system. The method further includes adding a non-selected portion of the available memory to memory space available to the operating system during operation. An associated system and machine readable medium are also disclosed.
    Type: Grant
    Filed: December 28, 2007
    Date of Patent: May 24, 2011
    Assignee: Intel Corporation
    Inventors: Robert C. Swanson, John V. Lovelace, Larry D. Aaron, Jr., Sugumar Govindarajan
  • Patent number: 7900004
    Abstract: Provided are a method, system, and article of manufacture for converting backup copies of objects created using a first backup program to backup copies created using a second backup program. A plurality of backup copies of versions of an object are created using a first backup program, wherein the object has an object name. The first backup program is used to restore at least one of the backup copies to a restored version of the object having a name different from the object name. A second backup program is used to create a backup copy of each restored version of the object. A name of a designated object is assigned to each backup copy created using the second backup program. Metadata of each backup copy created using the second backup program is updated with metadata for the designated object.
    Type: Grant
    Filed: August 24, 2007
    Date of Patent: March 1, 2011
    Assignee: International Business Machines Corporation
    Inventors: Shannon Lyn Gallaher, Glenn Randle Wilcock
  • Patent number: 7831789
    Abstract: A method, system computer program product recorded on a computer readable medium, for fast incremental backup of a storage device includes selecting an area of the data storage device for backup; creating the bitmap of data storage device; reading the selected area of the data storage device; converting data read from the data storage device into a usable format for the comparison of descriptors; reading descriptors of logical storage units of the selected area; discarding selected data access attributes of the descriptors; generating hash values for the descriptors; comparing the hash values of the descriptors of the logical storage units of the selected area with the hash values of the descriptors of previously archived logical storage units; for physical storage units related to logical storage units of the selected area whose hash values of the descriptors are identical to the hash values of the descriptors of the archived logical storage units, checking if these physical storage units need to be backed u
    Type: Grant
    Filed: March 15, 2007
    Date of Patent: November 9, 2010
    Assignee: Acronis Inc.
    Inventors: Yuri S. Per, Maxim V. Tsypliaev, Maxim V. Lyadvinsky, Alexander G. Tormasov, Serguei M. Beloussov
  • Patent number: 7822927
    Abstract: A directory name lookup cache (DNLC) provides a hashed forward mapping for finding the “child handle” associated with a “parent handle” and a “child name.” To provide an efficient reverse lookup capability, a second set of links is added to each cache entry for a “child hash list” indexed by a hashing of the child handle. For dynamically enabling and disabling the reverse mapping, when a new cache entry is added to its parent hash list, if the reverse mapping is enabled, then the new cache entry is also added to its child hash list; otherwise, the new cache entry is marked to indicate that it is not in any child hash list. To save memory, the parent hash lists and the child hash lists may share hash buckets.
    Type: Grant
    Filed: May 14, 2007
    Date of Patent: October 26, 2010
    Assignee: EMC Corporation
    Inventor: Michael D. Scheer
  • Patent number: 7743203
    Abstract: A memory management component can track the amount of time between erase cycles for a particular memory region, and can manage memory region such that the regions are given sufficient time to rest and recover, or are given at least as much rest time as is practical, before being subject to an erase cycle. A reclamation management component can reclaim memory region that have invalid data stored therein, and can reclaim regions on a just-in-time basis when practical, and can determine which regions to reclaim based on various factors, such as the amount of time since a region was last erased, and the number of programming errors associated with a region. The memory management component can thereby optimize the useful life, minimize or reduce loss of margin in memory regions, and minimize or reduce programming errors of memory regions, of non-volatile (e.g., flash) memory.
    Type: Grant
    Filed: May 11, 2007
    Date of Patent: June 22, 2010
    Assignee: Spansion LLC
    Inventor: Robert Brent France
  • Patent number: 7694072
    Abstract: A system, method and computer program for allocating physical memory from a group of N memory devices to logical volumes. A group of N memory devices are partitioned into a plurality of bands, each of the group of N memory devices sharing a portion of each of the plurality of bands. A cluster map for each of the plurality of bands is generated. The cluster maps indicate the physical address for each of a plurality of clusters. Each of the plurality of clusters are distributed equally over two or more of the N memory devices to ensure a specified level of redundancy for each of the plurality of bands. Each of the N memory devices share an approximately equal number of clusters. Available bands are determined and are allocated to a logical volume.
    Type: Grant
    Filed: September 22, 2005
    Date of Patent: April 6, 2010
    Assignee: Xyratex Technology Limited
    Inventor: Paul Nehse
  • Patent number: 7606944
    Abstract: A system and method for optimizing accesses to storage devices based on RAID I/O request characteristics is disclosed. A current I/O request processed by a storage controller is analyzed for relative locality to a previous I/O request, and adjusted over time such that storage device accesses will be efficiently conducted with respect to sequential or random workloads. A storage device access profile is maintained for each storage device based on sequential or random locality characteristics of previous RAID I/O requests. The chunk locations of the two most recent accesses are sampled according to predetermined criteria in order to create a storage device access profile, which governs queue depth and I/O size parameters used to communicate with storage devices. By managing I/O requests to storage devices using this invention, performance of such a storage controller will be optimized for changing random and sequential workloads.
    Type: Grant
    Filed: May 10, 2007
    Date of Patent: October 20, 2009
    Assignee: Dot Hill Systems Corporation
    Inventors: George Alexander Kalwitz, Paul Andrew Ashmore