Patents Examined by Patrick M. Moore
  • Patent number: 7216202
    Abstract: One embodiment of the present invention provides a system that facilitates avoiding locks by speculatively executing critical sections of code. During operation, the system allows a process to speculatively execute a critical section of code within a program without first acquiring a lock associated with the critical section. If the process subsequently completes the critical section without encountering an interfering data access from another process, the system commits changes made during the speculative execution, and resumes normal non-speculative execution of the program past the critical section. Otherwise, if an interfering data access from another process is encountered during execution of the critical section, the system discards changes made during the speculative execution, and attempts to re-execute the critical section.
    Type: Grant
    Filed: February 24, 2004
    Date of Patent: May 8, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Shailender Chaudhry, Marc Tremblay, Quinn A. Jacobson
  • Patent number: 7171540
    Abstract: One embodiment of the present invention provides an object-addressed memory hierarchy that is able to access objects stored outside of main memory. During operation, the system receives a request to access an object, wherein the request includes an object identifier for the object that is used to reference the object within the object-addressed memory hierarchy. Next, the system uses the object identifier to retrieve an object table entry associated with the object. The system then examines a valid bit within the object table entry. If the valid bit indicates the object is located in main memory, the system uses a physical address in the object table entry to access the object in main memory. On the other hand, if the valid bit indicates that the object is not located in main memory, the system relocates the object into memory from a location outside of memory, and then accesses the object in main memory.
    Type: Grant
    Filed: October 31, 2003
    Date of Patent: January 30, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Matthew L. Seidl, Gregory M. Wright, Mario I. Wolczko
  • Patent number: 7159090
    Abstract: A data accessing method includes the steps of obtaining a track information entry about a predetermined track from a play order table, which points to a track descriptor in a track information table; obtaining the track descriptor from the track information table, the track descriptor including a decryption key corresponding to the predetermined track, pointer information that points to a part descriptor of a plurality of part descriptors in a part information table, and name pointer information that points to a name slot entry in a name table having a plurality of name slot entries; using the name slot entry and the part descriptor to read a part of an audio file according to part pointer information in the part descriptor.
    Type: Grant
    Filed: April 1, 2003
    Date of Patent: January 2, 2007
    Assignee: Sony Corporation
    Inventors: Seiji Ohbi, Takashi Kawakami, Manabu Kii, Masato Hattori
  • Patent number: 7143240
    Abstract: A cost-adaptive cache including the ability to dynamically maximize performance in a caching system by preferentially caching data according to the cost of replacing data. The cost adaptive cache includes a partitioned real cache, wherein data is stored in each of the real cache partitions according to its replacement cost. Also, the cost-adaptive cache includes a partitioned phantom cache to provide a directory of information pertaining to blocks of data which do not qualify for inclusion in the real cache. The partitions in the phantom cache correspond to the partitions in the real cache. Moreover, the cost-adaptive cache maximizes performance in a system by preferentially caching data that is more costly to replace. In one embodiment of the system, the cost of replacing a block of data is estimated by the previous cost incurred to fetch that block of data.
    Type: Grant
    Filed: October 31, 2003
    Date of Patent: November 28, 2006
    Assignee: International Business Machines Corporation
    Inventors: Windsor Wee Sun Hsu, Honesty Cheng Young
  • Patent number: 7133988
    Abstract: A network storage virtualization method and apparatus in a network storage system having a plurality of network storage devices. According to the present invention a client connected via a network is allowed to access the network storage devices as one virtual network storage system. In addition the client is permitted to access the network storage devices separate from the virtualized network storage system for other purposes such as reporting, verifying or backing up.
    Type: Grant
    Filed: February 25, 2004
    Date of Patent: November 7, 2006
    Assignee: Hitachi, Ltd.
    Inventor: Akira Fujibayashi
  • Patent number: 7127581
    Abstract: A method of migrating data from an old storage subsystem to a new storage subsystem in a data processing system which comprises host computers and storage subsystems. There is provided a route-changing phase before the data is migrated from the old storage subsystem to the new storage subsystem. In the route-changing phase, each host computer can access both the old and new storage subsystems and the new storage subsystem writes data into the old storage subsystem in response to a write request from the host computer and reads data from the old storage subsystem and sends the data to the host computer in response to a read request from the host computer.
    Type: Grant
    Filed: March 4, 2004
    Date of Patent: October 24, 2006
    Assignee: Hitachi, Ltd.
    Inventor: Naoki Watanabe
  • Patent number: 7124264
    Abstract: The present invention relates to a storage system, including a first storage unit having a first storage volume for storing data, and a second storage unit having a second storage volume communicably connected with the first storage unit, wherein the first storage unit further comprises a replication data transmission unit for transmitting the replication of data to a second storage unit when the data is written to the first storage volume, the second storage unit further comprises a replication data reception unit for writing the replication of the data transmitted by the replication data transmission unit to the second storage volume, the first storage unit further comprises a disk heart beat write unit for repeatedly writing a first heart beat message to the first storage volume at intervals within a predetermined time, and the second storage unit further comprise a disk heart beat detection unit for detecting the replication of the first heart beat message to be written to the second storage volume by the
    Type: Grant
    Filed: March 22, 2004
    Date of Patent: October 17, 2006
    Assignee: Hitachi, Ltd.
    Inventor: Shinichiro Yamashita
  • Patent number: 7096342
    Abstract: An LUN/LBA interface is utilized to obtain the benefits of a content addressed storage (CAS) interface. Reference data is manipulated in a manner similar to a CAS system, where an object ID (OID) table is used to maintain OIDs generated for hashed LBAs. A first tier logic block is used to provide a LUN/LBA storage interface to application programs and to facilitate the writing of reference data. A second tier logic block hashes the content of reference data to be written and stores the OID generated to the first OID table. A third tier logic block facilitates writing the reference data to an LUN and to verify the accuracy of reference data to be read from the LUN. Reference data may be written to a storage area in accordance with a write-once, write-many, or write-many with versioning policy.
    Type: Grant
    Filed: October 28, 2003
    Date of Patent: August 22, 2006
    Assignee: International Business Machines Corporation
    Inventors: Lawrence Yiumchee Chiu, Prasenjit Sarkar, Surugucchi Krishnakumar Rao, Kaladhar Vorunganti