Patents by Inventor Adi Ofer

Adi Ofer 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: 7711858
    Abstract: A scheduling method and apparatus for use by a processor that controls storage devices of a data storage system is presented. The method allocates processing time between I/O operations and background operations for predetermined time slots based on an indicator of processor workload.
    Type: Grant
    Filed: October 23, 2006
    Date of Patent: May 4, 2010
    Assignee: EMC Corporation
    Inventors: Adi Ofer, Daniel E. Rabinovich, Stephen R. Ives, Peng Yin, Cynthia J. Burns, Ran Margalit, Rong Yu
  • Patent number: 7697515
    Abstract: Data is transparently migrated between groups of logical units of storage presented as virtual arrays. A source virtual array has at least one source virtual port coupled to a fabric. Each source virtual port having a source virtual port name and a source virtual port address. A destination virtual array has one or more destination virtual ports coupled to the fabric, each destination virtual port having a destination virtual port name and a destination virtual port address. All data resident on the source virtual array is copied to the destination virtual array. The destination virtual port names and LUN names and numbers are then exchanged with the source virtual port names and LUN names and numbers. The fabric then updates its name server database so that the database associates the source virtual port name with the destination virtual port address.
    Type: Grant
    Filed: December 27, 2005
    Date of Patent: April 13, 2010
    Assignee: EMC Corporation
    Inventors: Adi Ofer, Kiran Madnani, Jeffrey A. Brown
  • Patent number: 7697554
    Abstract: Data is transparently migrated between groups of logical units of storage presented as virtual arrays. A source virtual array has at least one source virtual port coupled to a fabric. Each source virtual port having a source virtual port name and a source virtual port address. A destination virtual array has one or more destination virtual ports coupled to the fabric, each destination virtual port having a destination virtual port name and a destination virtual port address. All data resident on the source virtual array is copied to the destination virtual array. The destination virtual port names and LUN names and numbers are then replaced with the source virtual port names and LUN names and numbers. The fabric then updates its name server database so that the database associates the source virtual port name with the destination virtual port address.
    Type: Grant
    Filed: December 27, 2005
    Date of Patent: April 13, 2010
    Assignee: EMC Corporation
    Inventors: Adi Ofer, Kiran Madnani, Jeffrey A. Brown
  • Patent number: 7685395
    Abstract: Described are a storage network and method of presenting a virtual array in the storage network. The storage network includes a first storage array and a second storage array. At least one of the first and second storage arrays has one or more logical units of storage assigned to a virtual array that spans the first and second storage arrays. In addition, at least one of the first and second storage arrays has one or more physical ports coupled to the virtual array. The virtual array is assigned a unique virtual port identifier (ID) for each physical port coupled to the virtual array. A host coupled to a switch can communicate with the virtual array using a virtual port ID assigned to the virtual array.
    Type: Grant
    Filed: June 29, 2006
    Date of Patent: March 23, 2010
    Assignee: EMC Corporation
    Inventors: Jeffrey A. Brown, Kiran Madnani, Adi Ofer
  • Patent number: 7571279
    Abstract: A disk drive apparatus has a magnetic platter, a disk drive motor, and a disk drive controller. The disk drive controller is capable of storing data onto and retrieving data from the magnetic platter while the magnetic platter turns at a predefined maximum speed. The disk drive controller is configured to receive a command to access a storage location on the magnetic platter from an external storage controller, and direct the disk drive motor to increase rotational speed of the magnetic platter to the predefined maximum speed in response to the command. The disk drive controller is further configured to, prior to the magnetic platter reaching the predefined maximum speed, access the storage location on the magnetic platter in response to the command. Accordingly, early access to storage locations on the magnetic platter is not substantially hindered by the spin up process.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: August 4, 2009
    Assignee: EMC Corporation
    Inventors: Gilad Sade, Adi Ofer
  • Patent number: 7516348
    Abstract: Redundancy in storage arrays is used to extend the life of disk drives and conserve power. In an exemplary storage array, a group of storage devices includes y storage devices. Data and redundant information is distributed across the y devices to provide m levels of redundancy. “Spun down devices” are provided by spinning down a set of one or more of up to m of the y storage devices. Meanwhile, data transfers to and from the group of storage devices continue to be serviced. After a predetermined time, the currently spun down disks can be spun up, and new spun down devices are provided by spinning down another set of one or more of m of the y storage devices. An array may include several groups of storage devices, each having its own value for y and m.
    Type: Grant
    Filed: February 24, 2006
    Date of Patent: April 7, 2009
    Assignee: EMC Corporation
    Inventor: Adi Ofer
  • Patent number: 7500134
    Abstract: Failover is provided between groups of logical units of storage presented as virtual arrays. A primary virtual array has at least one primary virtual port coupled to a fabric, each primary virtual port having a source virtual port name and a source virtual port address. A secondary virtual array has one or more secondary virtual ports coupled to the fabric, each secondary virtual port having a secondary virtual port name and a secondary virtual port address. All data resident on the primary virtual array is copied to the secondary virtual array. If a failure occurs in the primary virtual array, the secondary virtual port names and LUN names and numbers are replaced with the primary virtual port names and LUN names and numbers. The fabric then updates its name server database so that the database associates the primary virtual port names and LUN names and numbers with the secondary virtual port addresses.
    Type: Grant
    Filed: December 27, 2005
    Date of Patent: March 3, 2009
    Assignee: EMC Corporation
    Inventors: Kiran Madnani, Adi Ofer, Jeffrey A. Brown
  • Patent number: 7484057
    Abstract: Described are a system and method of migrating data stored in logical units of storage (LUNs) at a plurality of source arrays into one destination storage array transparently with respect to a host communicating with the source storage arrays through a switch. During a data migration event, data stored in a LUN of a first source storage array are copied to a first corresponding LUN of the destination storage array and data stored in a LUN of a second source storage array are copied to a second corresponding LUN of the destination storage array.
    Type: Grant
    Filed: June 29, 2006
    Date of Patent: January 27, 2009
    Assignee: EMC Corporation
    Inventors: Kiran Madnani, Jeffrey A. Brown, Adi Ofer
  • Patent number: 7484056
    Abstract: Described is a system and method of migrating all data resident in disks at a source storage array to a plurality of destination storage arrays transparently with respect to a host communicating with the source storage array through a switch. During a data migration event, data stored in a first logical units of storage (LUN) of the source storage array is copied to a corresponding LUN of a first destination storage array, and data stored in a second LUN of the source storage array is copied to a corresponding LUN of a second destination storage array.
    Type: Grant
    Filed: June 29, 2006
    Date of Patent: January 27, 2009
    Assignee: EMC Corporation
    Inventors: Kiran Madnani, Jeffrey A. Brown, Adi Ofer
  • Patent number: 7484059
    Abstract: Described are systems and methods of migrating data and metadata from a source storage array to a destination storage array transparently with respect to a storage application executing on a host. The storage application provides particular storage functionality at the source storage array while using metadata during its execution. During a data migration event in which data resident in disks at the source storage array are fully copied to the destination storage array, metadata stored at the source storage array are copied to the destination storage array. After the data migration event, the destination storage array assumes the personality of the source storage array.
    Type: Grant
    Filed: June 29, 2006
    Date of Patent: January 27, 2009
    Assignee: EMC Corporation
    Inventors: Adi Ofer, Kiran Madnani, Jeffrey A. Brown
  • Patent number: 7472223
    Abstract: A technique involves accessing a hard disk platter surface using surface virtualization. The technique includes receiving a command to access a hard disk platter surface. The command specifies an address. The technique further includes providing a virtual surface identifier based on the address specified by the command, and generating a particular real surface identifier based on the virtual surface identifier. The particular real surface identifier corresponds to a particular hard disk platter surface among multiple hard disk platter surfaces of a set of disk drives. The technique further includes accessing the particular hard disk platter surface among the multiple hard disk platter surfaces of the set of disk drives based on the particular real surface identifier. Such operation is capable of being carried out within a disk drive controller in a manner that is transparent to a host, or alternatively by the host.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: December 30, 2008
    Assignee: EMC Corporation
    Inventor: Adi Ofer
  • Patent number: 7409687
    Abstract: A hierarchical, probability-based look-up method and apparatus for selection of an operation for job generation. Bitmaps are set based on the priority class of pending operation requests. The bitmap values are used to select a priority class and an operation for the selected priority class in a two-step, probability-based table look-up.
    Type: Grant
    Filed: April 19, 2004
    Date of Patent: August 5, 2008
    Assignee: EMC Corporation
    Inventors: Adi Ofer, Robert S. Mason, Jr.
  • Publication number: 20080147970
    Abstract: A data storage system having a host computer/server coupled to a bank of disk drives through an interface. The bank of disk drives has a plurality of disk units, each one of such disk drive units having a magnetic storage media. The interface includes: a plurality of front-end directors coupled to the host computer/server; a plurality of back end directors coupled to the disk drive units; and, a global cache memory available for caching user data for the plurality of disk drives. The global cache memory comprises a plurality of non-volatile memory global cache memory sections distributed among disk drive units within the bank of disk drive units. The non-volatile memory global cache memory sections are connected to the back-end directors. Each one of the non-volatile memory global cache memory sections caches user data for the magnetic storage media of the plurality of disk drive units independent of the one of the disk drive units having such one of the non-volatile memory global cache memory sections.
    Type: Application
    Filed: December 14, 2006
    Publication date: June 19, 2008
    Inventors: Gilad Sade, Adi Ofer
  • Patent number: 7383408
    Abstract: Ordering data writes include a host computer providing a plurality of data writes to a primary storage device, the primary storage device assigning a first sequence number to data writes begun after a first time and before a second time, the primary storage device assigning a second sequence number, different from the first sequence number, to data writes begun after the second time, in response to completion of all writes assigned the first sequence number, the primary storage device transferring writes assigned the first sequence number to a secondary storage device, and, in response to the primary storage device transferring all writes assigned the first sequence number to the secondary storage device, the primary storage device sending a commit message to the secondary storage device. Ordering data writes may also include, in response to receiving a commit message from the primary storage device, the secondary storage device storing the data writes having the first sequence number.
    Type: Grant
    Filed: August 11, 2006
    Date of Patent: June 3, 2008
    Assignee: EMC Corporation
    Inventors: David Meiri, Mark J. Halstead, Haim Kopylovitz, Benjamin W. Yoder, Adi Ofer, Hana Moreshet
  • Patent number: 7376651
    Abstract: Accessing stored data includes providing a virtual storage area having a table of pointers that point to one of: a disk storage area and a volatile memory area, wherein the virtual storage area contains no sections of data, in response to a request for accessing data of the virtual storage area, determining whether a corresponding one of the pointers points to the disk storage area or points to the volatile storage area and accessing the data from the disk storage area or from the volatile storage area. Accessing stored data may also include associating a first one of the other storage areas with the virtual storage area, wherein the virtual storage area represents a copy of data of the disk storage area. Accessing stored data may also include causing all of the pointers of the table to initially point to sections of the disk storage area when the virtual storage area is initially associated with the disk storage area.
    Type: Grant
    Filed: August 11, 2006
    Date of Patent: May 20, 2008
    Assignee: EMC Corporation
    Inventors: Hana Moreshet, Haim Kopylovitz, Adi Ofer, David Meiri, Mark J. Halstead
  • Publication number: 20080109632
    Abstract: Accessing stored data includes providing a virtual storage area having a table of pointers that point to sections of at least two other storage areas, where the virtual storage area contains no sections of data, in response to a request for accessing data of the virtual storage area, determining which particular one of the other storage areas contain the data, and accessing the data on the particular one of the other storage areas using the table of pointers. Accessing stored data may also include associating a first one of the other storage areas with the virtual storage area, where the virtual area device represents a copy of data of the first one of the other storage areas. Accessing stored data may also include causing all of the pointers of the table to initially point to sections of the first one of the other storage areas when the virtual storage area is initially associated with the first one of the other storage areas. The storage areas may be storage devices. The sections may be tracks.
    Type: Application
    Filed: January 4, 2008
    Publication date: May 8, 2008
    Inventors: Natan Vishlitzky, Haim Kopylovitz, Hana Moreshet, Adi Ofer
  • Publication number: 20080082740
    Abstract: A disk drive apparatus has a magnetic platter, a disk drive motor, and a disk drive controller. The disk drive controller is capable of storing data onto and retrieving data from the magnetic platter while the magnetic platter turns at a predefined maximum speed. The disk drive controller is configured to receive a command to access a storage location on the magnetic platter from an external storage controller, and direct the disk drive motor to increase rotational speed of the magnetic platter to the predefined maximum speed in response to the command. The disk drive controller is further configured to, prior to the magnetic platter reaching the predefined maximum speed, access the storage location on the magnetic platter in response to the command. Accordingly, early access to storage locations on the magnetic platter is not substantially hindered by the spin up process.
    Type: Application
    Filed: September 28, 2006
    Publication date: April 3, 2008
    Applicant: EMC Corporation
    Inventors: Gilad Sade, Adi Ofer
  • Patent number: 7340489
    Abstract: Accessing stored data includes providing a virtual storage area having a table of pointers that point to sections of at least two other storage areas, where the virtual storage area contains no sections of data, in response to a request for accessing data of the virtual storage area, determining which particular one of the other storage areas contain the data, and accessing the data on the particular one of the other storage areas using the table of pointers. Accessing stored data may also include associating a first one of the other storage areas with the virtual storage area, where the virtual area device represents a copy of data of the first one of the other storage areas. Accessing stored data may also include causing all of the pointers of the table to initially point to sections of the first one of the other storage areas when the virtual storage area is initially associated with the first one of the other storage areas. The storage areas may be storage devices. The sections may be tracks.
    Type: Grant
    Filed: April 10, 2002
    Date of Patent: March 4, 2008
    Assignee: EMC Corporation
    Inventors: Natan Vishlitzky, Haim Kopylovitz, Hana Moreshet, Adi Ofer
  • Publication number: 20080005507
    Abstract: Described is a system and method of migrating all data resident in disks at a source storage array to a plurality of destination storage arrays transparently with respect to a host communicating with the source storage array through a switch. During a data migration event, data stored in a first logical units of storage (LUN) of the source storage array is copied to a corresponding LUN of a first destination storage array, and data stored in a second LUN of the source storage array is copied to a corresponding LUN of a second destination storage array.
    Type: Application
    Filed: June 29, 2006
    Publication date: January 3, 2008
    Applicant: EMC Corporation
    Inventors: Kiran Madnani, Jeffrey A. Brown, Adi Ofer
  • Publication number: 20070283186
    Abstract: Failover is provided between groups of logical units of storage presented as virtual arrays. A primary virtual array has at least one primary virtual port coupled to a fabric, each primary virtual port having a source virtual port name and a source virtual port address. A secondary virtual array has one or more secondary virtual ports coupled to the fabric, each secondary virtual port having a secondary virtual port name and a secondary virtual port address. All data resident on the primary virtual array is copied to the secondary virtual array. If a failure occurs in the primary virtual array, the secondary virtual port names and LUN names and numbers are replaced with the primary virtual port names and LUN names and numbers. The fabric then updates its name server database so that the database associates the primary virtual port names and LUN names and numbers with the secondary virtual port addresses.
    Type: Application
    Filed: December 27, 2005
    Publication date: December 6, 2007
    Inventors: Kiran Madnani, Adi Ofer, Jeffrey Brown