Patents Represented by Attorney, Agent or Law Firm John M. Gunther
  • Patent number: 6513102
    Abstract: A storage system has a storage controller connected to a plurality of storage devices. The described system and method transfer physical data from a first storage device to a second storage device. The method does not involve a host computer in the physical data transfer thereby saving both computer CPU time and system bandwidth. The method receives an internal copy command from a commanding processor (the host) over a controller input path, reads at least one block of data, in data block format, from the first storage device, stores the requested data in a volatile memory in the controller, and sets a state of the pending stored data as a write pending state. The controller then destages the write pending memory stored data to the second storage device.
    Type: Grant
    Filed: April 30, 2002
    Date of Patent: January 28, 2003
    Assignee: EMC Corporation
    Inventors: Brian Garrett, Haim Kopylovitz, Hana Moreshet
  • Patent number: 6493796
    Abstract: In one embodiment, mirroring communication from a second source storage device to a second target storage device in a data mirroring system is disabled when mirroring communication from a first source storage device to a first target storage device is disabled. In another embodiment, information is stored in a data mirroring system identifying at least one subset of a plurality of mirrored source storage devices for which a consistent representation of data is desired to be maintained on at least one corresponding subset of a plurality of target storage devices. In yet another embodiment, at least one of a plurality of mirrored source storage devices is placed in one of a first state, a second state, and a third state. In response to a source storage system receiving a write-requesting command chain directed to a mirrored source storage device in the first state, the command chain is permitted to commit and data written by the command chain is transferred to a corresponding target storage device.
    Type: Grant
    Filed: September 1, 1999
    Date of Patent: December 10, 2002
    Assignee: EMC Corporation
    Inventors: Dan Arnon, Yuval Ofek, Douglas E. LeCrone
  • Patent number: 6480930
    Abstract: A method balances workloads of storage devices of a storage subsystem. The method includes reading a mailbox to obtain control parameters and collecting historical data on numbers of accesses to storage volumes of the storage devices. The control parameters are written in the mailbox by host devices. The method also includes selecting data swaps that lead to better balanced workloads for storage devices based on the historical data. The act of selecting and/or the act of collecting being initialized by the control parameters.
    Type: Grant
    Filed: September 15, 1999
    Date of Patent: November 12, 2002
    Assignee: EMC Corporation
    Inventors: Avinoam Zakai, David Wayne DesRoches, Victoria Dubrovsky, Shai Bar-Nefy, Ruben Michel
  • Patent number: 6477618
    Abstract: A storage cluster includes integrated cached disk arrays (ICDAs) and cluster interconnect such as a set of Fiber Channel links. Selected ICDAs include data storage disks collectively configured as cluster volumes. A switch network in each ICDA provides connections between the cluster interconnect and host interfaces, disk interfaces, and memory modules that may reside in the ICDA. Upon receiving a request, an ICDA determines whether the target disk resides in another ICDA, and if so forwards the request to the other ICDA via the cluster interconnect. The other ICDA services the request and returns a completion indication, which is forwarded to the host. Requests may also flow from the second ICDA to the first ICDA. The ICDAs may also include memory for data caching. The switch network preferably has a common interface to the different functional elements (host interfaces, disk interfaces, memory modules) for greater flexibility in configuring each ICDA.
    Type: Grant
    Filed: December 28, 2000
    Date of Patent: November 5, 2002
    Assignee: EMC Corporation
    Inventor: Kendell Chilton
  • Patent number: 6460123
    Abstract: A computer including an interpreter that maps logical user write requests to physical block level write requests, a host storage driver having a disk driver interface for receiving block level write requests, a host storage disk connected to be controlled by disk control signals of the host storage driver, and a mirror system having a disk driver interface to the interpreter and a remote procedure call interface to a remote archive repository, the mirror system sending write requests and data to be written from the interpreter to the host storage driver and to the remote archive repository.
    Type: Grant
    Filed: December 3, 1996
    Date of Patent: October 1, 2002
    Assignee: EMC Corporation
    Inventor: Steven M. Blumenau
  • Patent number: 6442659
    Abstract: In an aspect, the invention features a method of storing data in a digital data storage system that includes a plurality of disk drives. The method involves receiving data at the data storage system; compressing the received data to generate a compressed version of the data; storing the received data on a first set of disk drives among the plurality of disk drives; and storing the compressed version of the received data on a parity disk drive so that the parity drive stores data that is redundant of data that is stored on the first set of drives.
    Type: Grant
    Filed: February 17, 1998
    Date of Patent: August 27, 2002
    Assignee: EMC Corporation
    Inventor: Steven M. Blumenau
  • Patent number: 6438586
    Abstract: A method of communicating between first and second processes running on a plurality of host processors that are connected to a data storage system, the method including the steps of establishing a connection between the first and second processes through the data storage system; and by using the connection established through the data storage system, sending information between the first and second processes.
    Type: Grant
    Filed: September 30, 1996
    Date of Patent: August 20, 2002
    Assignee: EMC Corporation
    Inventors: Yeshayahu Hass, Natan Vishlitzky, Yoav Raz
  • Patent number: 6424999
    Abstract: A system comprising a mass storage subsystem, as a master device and backup subsystem, as a slave device, the slave device transferring data items to the master device during a restore operation. Each data item to be restored is identified by a data item identifier. The master device initially provides the slave device with a list of data item identifiers and the slave device receives the data item identifier list from the master device and order the data item identifiers thereon in an optimal order for transfer to the master device, the ordering based on the ordering of the data items on storage media on which they are stored. The master device, in each of a plurality of iterations, receives from the slave device data item identifiers identifying a data item transferred during a previous iteration and a data item to be transferred during the current iteration and requests the slave device to transfer the data item to be transferred.
    Type: Grant
    Filed: March 11, 1999
    Date of Patent: July 23, 2002
    Assignee: EMC Corporation
    Inventors: Dan Arnon, Yuval Ofek
  • Patent number: 6415372
    Abstract: A method and an apparatus for reconfiguring a storage subsystem by performing an ordered sequence of reconfigurations of physical storage volumes of the storage subsystem. The method and apparatus perform a portion of the sequence of reconfigurations, in response to receiving a rollback request, in an order that is reversed with respect to the order of the sequence.
    Type: Grant
    Filed: November 19, 1999
    Date of Patent: July 2, 2002
    Assignee: EMC Coropration
    Inventors: Avinoam Zakai, Shai Bar-Nefy, David Wayne DesRoches, Tao Kai Lam, Ruben Michel
  • Patent number: 6408369
    Abstract: A storage system has a storage controller connected to a plurality of storage devices. The described system and method transfer physical data from a first storage device to a second storage device. The method does not involve a host computer in the physical data transfer thereby saving both computer CPU time and system bandwidth. The method receives an internal copy command from a commanding processor (the host) over a controller input path, reads at least one block of data, in data block format, from the first storage device, stores the requested data in a volatile memory in the controller, and sets a state of the pending stored data as a write pending state. The controller then destages the write pending memory stored data to the second storage device.
    Type: Grant
    Filed: March 12, 1998
    Date of Patent: June 18, 2002
    Assignee: EMC Corporation
    Inventors: Brian Garrett, Haim Kopylovitz, Hana Moreshet
  • Patent number: 6398935
    Abstract: There is disclosed an improved method for manufacturing printed circuit boards which solves the problem of immersion bath contaminants being plated-out onto electrically-conductive, circuit functional pads, (board-features) by introducing into the bath system a mechanism for attracting those contaminants to non-functional “micro-thieves” which are electrically-conductive, non-circuit-functional pads having substantially smaller dimensions than those of the smallest board-feature, thereby taking advantage of previously unknown immersion bath uncontrolled strike phenomena, whereby the contaminants are directed to the micro-thieves and away from the board-features. Application of the micro-thieves in the immersion bath environment also produces plated features, of both finer and larger geometries, having flatter surfaces and a more uniform plated thickness for all features on the printed circuit board, than previously obtained.
    Type: Grant
    Filed: March 27, 2000
    Date of Patent: June 4, 2002
    Assignee: EMC Corporation
    Inventor: Stuart Douglas Downes
  • Patent number: 6397309
    Abstract: A computer program product is used with a programmable device to provide a data item reconstruction element for reconstructing information stored on a back-up information storage subsystem associated with at least one protected volume. The back-up information storage subsystem includes a plurality of storage media, each associated with one of a plurality of sets, the information associated with the protected volume being stored on storage media associated with one of the sets. The data item reconstruction element during the reconstruction operation retrieves in parallel information from a plurality of the storage media associated with the one of the sets on which information associated with the at least one protected volume is stored, to obtain the information which is associated with the protected volume.
    Type: Grant
    Filed: March 12, 2001
    Date of Patent: May 28, 2002
    Assignee: EMC Corporation
    Inventors: Nadav Kedem, Haim Bitner
  • Patent number: 6360330
    Abstract: A backup server controls the backing up of data stored on a mass storage subsystem in response to a backup request from a host identifying data to be backed up during a backup operation, the mass storage subsystem storing data in a plurality of mirrored copies. The backup server comprises a discovery module, a preparation module, an execution module and a clean-up module. The discovery module receives the backup request and identifies, during a discovery phase, at least one storage location on the mass storage subsystem on which data to be backed up during the backup operation is stored. The preparation module, during a preparation phase following the discovery phase, enables the mass storage subsystem to sever one of said mirrored copies and make it available to backup server for the backup operation.
    Type: Grant
    Filed: March 31, 1998
    Date of Patent: March 19, 2002
    Assignee: EMC Corporation
    Inventors: Madhav Mutalik, John Deshayes, Ananthan Pillai, Ajay Shekhar, Benoit J. Merlet, Faith M. Senie
  • Patent number: 6353869
    Abstract: A queued lock prioritizes access to a shared resource in a distributed system. Each unsuccessful requestor adaptively delays its next poll for the lock by a period determined as a function of its priority in the lock request queue and the average duration of a significant processor operation involving the resource.
    Type: Grant
    Filed: May 14, 1999
    Date of Patent: March 5, 2002
    Assignee: EMC Corporation
    Inventors: Adi Ofer, Tuvia Leneman, Natan Vishlitzky
  • Patent number: 6353837
    Abstract: A method and apparatus for accessing storage from at least two different host computers features creating a first file having a first meta-data format and user data blocks in a mass storage medium using the first host computer and reading a logical to physical mapping of the user data blocks from the first file. A second file, having a second meta-data format, is created using a second host computer and the second file has blocks preallocated to be the same length as user data blocks of the first file. A logical to physical mapping of the preallocated user blocks is then obtained and the data blocks of the preallocated file are linked to the data blocks of the first file so that a reference to the preallocated blocks will provide an address at which the data requested can be read in the first file. In this manner, different meta-data blocks, corresponding to different filesystems, and/or operating systems, can be used in the respective first and second host computers.
    Type: Grant
    Filed: June 30, 1998
    Date of Patent: March 5, 2002
    Assignee: EMC Corporation
    Inventor: Steven M. Blumenau
  • Patent number: 6347335
    Abstract: A distributed computer system includes a plurality of computer nodes, including conventional digital computer systems, mass storage subsystems, servers and the like, and a common event log. The common event log includes a plurality of storage locations for storing common event log entries. Each computer node performs processing operations in connection with a program, and generates, at selected points in its program, an event log entry including status information representing status of the computer node at the point at which the log entry was generated, the computer nodes storing the event log entries which they generate in the common event log contemporaneous with the generation thereof. As a result, the event log entries are stored in the common event log in the order in which the computer nodes reach the points in their respective programs.
    Type: Grant
    Filed: September 22, 1995
    Date of Patent: February 12, 2002
    Assignee: EMC Corporation
    Inventors: Eli Shagam, Natan Vishlitzky, Yuval Ofek
  • Patent number: 6330655
    Abstract: A digital data storage system comprising a mass storage subsystem in which information is stored on one or more disk storage units, with a storage element constituting a track on a disk storage device and each track storing a plurality of records. Each track in each disk storage device of the digital data storage system is associated with a descriptor. In that embodiment, when the control device retrieves the contents of a record, it can use the format definition type identifier of the descriptor associated with the track to determine the format definition type for the track, use the specific format information to determine the location and size of the record on the track, and retrieve the record.
    Type: Grant
    Filed: August 20, 1999
    Date of Patent: December 11, 2001
    Assignee: EMC Corporation
    Inventors: Natan Vishlitzky, Haim Kopylovitz
  • Patent number: 6321308
    Abstract: A method of managing a storage system which includes a local and remote systems is provided. Link services between the two subsystems are provided though the use of a task queue. The task queue resides in a global memory of the local storage system and receives requests from the various host controllers, device, and remote controllers connected to the local storage. The remote controllers of the local storage service the requests placed in the task queue to enable data transfer between the local and remote storage systems. The task queue may be a doubly linked list of records including forward and backward pointers in addition to the request data. A two level locking scheme is employed to prevent the addition of incompatible requests to the queue and to enable maximum parallelism in servicing requests in the queue. The first level of locking applies to the entire queue and is used when records are added to and deleted from the queue. The second level of locking applies to the individual queue records.
    Type: Grant
    Filed: March 21, 1997
    Date of Patent: November 20, 2001
    Assignee: EMC Corporation
    Inventors: Dan Arnon, Yuval Ofek
  • Patent number: 6317759
    Abstract: A method and apparatus for providing an HTML applications development environment is disclosed. The applications development environment is used to develop large HTML based applications. The invention includes a preprocessor and associated preprocessor commands which are inserted into a source HTML file. The preprocessor reads the source file, evaluates the preprocessor commands, and makes the appropriate substitutions into an output HTML file.
    Type: Grant
    Filed: December 1, 1997
    Date of Patent: November 13, 2001
    Assignee: EMC Corporation
    Inventor: Roger Osmond
  • Patent number: 6311256
    Abstract: The invention relates to a method and apparatus for reordering, at a disk drive controller, a received sequence of read and write commands. The reordering can be system driven so that the system, when a command stalls, examines the command queue for another command to execute. Alternatively, the command queue itself can be reordered depending upon the expected time it takes for various commands to execute. Reordered commands can be flagged so that they cannot be reordered again. The resulting increase in throughput and efficiency occurs without reference to the particular disk drive or disk drive array configuration to which the controller is connected.
    Type: Grant
    Filed: June 30, 1997
    Date of Patent: October 30, 2001
    Assignee: EMC Corporation
    Inventors: Kenneth A. Halligan, Erez Ofer, John T. Fitzgerald