Patents by Inventor Eli Shagam

Eli Shagam 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: 7953834
    Abstract: A local area network includes a plurality of devices and a firewall for interfacing the LAN to a wide area network. In the LAN, each device generates a message packets for transmission over the network in which a time to live field contains an initial value that is preferably selected to be a function of the maximum path length for transfer of message packets within the local area network. Similarly, the firewall, when it receives message packets from the WAN for transmission to a device on the LAN provides in the time to live field an initial value that is preferably selected to be a function of the maximum path length for transfer of message packets within the local area network. When the firewall received a message packet from the LAN for transmission over the WAN, it provides a default initial value that is selected for use for message packets transmitted over the WAN in the time to live field, which typically will be significantly higher than the initial value that is used in the local area network.
    Type: Grant
    Filed: June 22, 2000
    Date of Patent: May 31, 2011
    Assignee: EMC Corporation
    Inventors: Eli Shagam, Scott B. Gordon
  • Patent number: 7472221
    Abstract: Accessing data memory includes writing data to a first memory location and to a second memory location in response to a request to write data to a memory address that corresponds to both locations, where the first and second memory locations are mirrored, in response to a request to read data from the memory address, reading data from the first memory location or the second memory location based on load balancing, and accessing data from the second memory location in response to a request to access data at the memory address when memory hardware corresponding to the first memory location has failed. Accessing the data memory may include requesting access to a specific one of the first and second memory locations. The memory address may contain a portion that is common to both the first memory location and the second memory location. Hardware coupled to the memory may cause data written using the memory address to be automatically written to the first memory location and the second memory location.
    Type: Grant
    Filed: March 29, 2004
    Date of Patent: December 30, 2008
    Assignee: EMC Corporation
    Inventors: Jerome J. Cartmell, Qun Fan, Steven T. McClure, Robert DeCrescenzo, Haim Kopylovitz, Eli Shagam
  • Patent number: 7401322
    Abstract: In a method for testing computer code, each branch that occurs within the machine-readable code is located. A first tracepoint is placed immediately after the beginning of the branch and a second tracepoint at the target address of each branch, each tracepoint generating an indicator. When the machine-readable code with the tracepoints is executed on the target computer, the method identifies those indicators that have been generated by their corresponding tracepoints, thereby permitting determination of those branches that the program control flow has not passed through. The test cases are modified to exercise the previously omitted branches, and the converted code is re-executed, until all branches have been properly exercised. The tracepoints are automatically eliminated after they have performed their intended function.
    Type: Grant
    Filed: September 25, 2001
    Date of Patent: July 15, 2008
    Assignee: EMC Corporation
    Inventors: Eli Shagam, Josef Ezra, Avihu Goral
  • Patent number: 7302526
    Abstract: Handling a faulting memory of a pair of mirrored memories includes initially causing a non-faulting memory of the pair of mirrored memories to service all read and write operations for the pair of mirrored memories, determining that hardware corresponding to the faulting memory of the pair of mirrored memories has been successfully replaced to provide a new memory, in response to the new memory being provided, causing data to be copied from the non-faulting memory to the new memory while data is being read to and written from the non-faulting memory, and, in response to successful copying to the new memory, causing writes to be performed to both memories of the pair of mirrored memories and selecting one of the pair of mirrored memories for read operations when one or more read operations are performed.
    Type: Grant
    Filed: March 29, 2004
    Date of Patent: November 27, 2007
    Assignee: EMC Corporation
    Inventors: Jerome J. Cartmell, Qun Fan, Steven T. McClure, Robert DeCrescenzo, Haim Kopylovitz, Eli Shagam
  • Patent number: 6961818
    Abstract: A method, system, and computer program product are disclosed for managing data in a cache. A first cache memory is provided that includes data. A second cache memory is provided that also includes data in which at least some of the data in the first cache memory is the same as at least some of the data in the second cache memory. In response to a request for data that is stored in both the first and second cache memories, one of the cache memories is chosen in accordance with an access balancing technique. The access balancing technique may include at least one of selection using round robin, and selection based on statistical analysis such as access frequency of the first and second cache memories. First and second access balancing techniques may be used for data accessed from the cache memories, which may comprise disk data and control data, such as data indicating whether data in the caches has been modified and is write pending.
    Type: Grant
    Filed: April 2, 2001
    Date of Patent: November 1, 2005
    Assignee: EMC Corporation
    Inventors: Gilad Sade, Eli Shagam, Natan Vishlitzky
  • Patent number: 6941492
    Abstract: A debugger mechanism to support multiple active targets and efficient switching between multiple active targets, in particular, heterogeneous targets, in a multiprocessing environment.
    Type: Grant
    Filed: February 5, 2002
    Date of Patent: September 6, 2005
    Assignee: EMC Corporation
    Inventors: Josef Ezra, Eli Shagam
  • Patent number: 6842843
    Abstract: A memory manager for use in connection with a memory comprises a memory access request receiver module, an address translation module and a memory access operation control module. The memory access request receiver module is configured to receive an access request requesting an access operation in connection with the memory, the access request including an address.
    Type: Grant
    Filed: June 29, 2001
    Date of Patent: January 11, 2005
    Assignee: EMC Corporation
    Inventors: Natan Vishlitzky, Haim Kopylovitz, Eli Shagam
  • Patent number: 6591335
    Abstract: Managing data in cache includes providing data from a disk storage area to a first cache memory, providing data from the disk storage area to a second cache memory, where the first and second cache memories contain at least some data that is not stored in the other one of the cache memories, and writing the same data to both of the cache memories in response to the data being modified while stored in the cache memories. Managing data in a cache may also include subdividing the first cache memory into primary and secondary storage areas, subdividing the second cache memory into primary and secondary storage areas, where primary areas of the first cache correspond to secondary areas of the second cache and where secondary areas of the first cache correspond to primary areas of the second cache, and providing data from the disk storage area to the one of the cache memories having a corresponding primary storage area.
    Type: Grant
    Filed: September 29, 2000
    Date of Patent: July 8, 2003
    Assignee: EMC Corporation
    Inventors: Gilad Sade, Eli Shagam, Natan Vishlitzky
  • Patent number: 6397295
    Abstract: The invention relates to a data processing system and method wherein a data processing system is connected to at least two busses, each of which is connected to a memory system. Controllers connected to one of the buses monitor the write operations at each other bus. The monitoring controllers are each connected to less then all of the lines of the “other bus” and continuously update their cache memories to reflect and maintain the integrity of the data in the cache memory.
    Type: Grant
    Filed: January 4, 1999
    Date of Patent: May 28, 2002
    Assignee: EMC Corporation
    Inventor: Eli Shagam
  • 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: 6341333
    Abstract: Load balancing of activities on physical disk storage devices is accomplished by monitoring reading and writing operations to blocks of contiguous storage locations, such as logical volumes on the physical disk storage devices to obtain disk utilization information. The disk utilization information provides a selection of one block pair. After testing to determine any adverse effect of making that change, an exchange is made to more evenly distribute the loading on individual physical disk storage devices. The exchange involves the use of a pair of specially configured logical volumes that receive copies of the data to be exchanged, allow a reconfiguration of the blocks in the block pair and the transfer of the data back to the other blocks in the block pair to effect the exchange.
    Type: Grant
    Filed: September 15, 1999
    Date of Patent: January 22, 2002
    Assignee: EMC Corporation
    Inventors: Moshe Schreiber, Ishay Kedem, Yuval Ofek, Natan Vishlitzky, Eli Shagam
  • Patent number: 6311326
    Abstract: The invention relates to a method and apparatus for debugging software running in a target machine. A debugging set-up script is created in a host machine which defines trace point locations, and the variables to be returned to the host machine. The method sends the trace point locations and variables to the target machine where a stub program running in the target machine effects the modification of a software program in the target machine by inserting traps at the trace points. Data is collected using the stub program to ascertain variable values when a trace point is hit and the acquired variable data are stored in the target machine in a target machine buffer memory. The collected data is sent, at the request of the host machine, or at the end of a predetermined time, or when a pass-count is reached or at a time set by the target machine, to the host machine without stopping or interrupting operation of the target system.
    Type: Grant
    Filed: January 4, 1999
    Date of Patent: October 30, 2001
    Assignee: EMC Corporation
    Inventor: Eli Shagam
  • Patent number: 6205529
    Abstract: An apparatus for defragmenting disks by incorporating a copy function in the logic controlling a disk, so that a disk can be instructed to copy the contents of tracks from one area to another on the disk without requiring a series of data transfers between the disk and the host computer to which it is assigned. Conventional defragmentation techniques can be used to determine which files need to be defragmented and how much contiguous free space is available on the disk. Once this has been determined, the present invention enables the defragmentation program to send copy commands to the disk to cause the copy function in the logic controlling the disk to perform the data transfers, thus freeing up the host computer to perform other processing until the logic controlling the disk signals completion of the copy function's operation.
    Type: Grant
    Filed: September 25, 1997
    Date of Patent: March 20, 2001
    Assignee: EMC Corporation
    Inventor: Eli Shagam
  • Patent number: 6161216
    Abstract: A method and apparatus for debugging the source code using the source code debugger includes the following steps. A script generator is provided to receive source code instructions. Executing the script generator includes reading each source code instruction and generating, based on the type of instruction, a debugging script. The debugging script includes a specification of trace points. The debugging script is then provided to the source code debugger.
    Type: Grant
    Filed: April 29, 1998
    Date of Patent: December 12, 2000
    Assignee: EMC Corporation
    Inventor: Eli Shagam
  • Patent number: 6158042
    Abstract: A method for counting the number of bits which are set to binary "1" in a word of length 2.sup.n includes generating a first mask of length 2.sup.n having alternating sequences of "1"'s and "0"'s, each sequence having a length "x" (the length "x" initially having a value of 1), and generating a second mask of length 2.sup.n by forming the complement of the first mask. Logical AND operations using the word and each of the first and second masks are performed to generate first and second intermediate words, respectively. That one of the first and second intermediate words having been ANDed with one of the first and second masks having a "0" in its least significant bit position, is shifted "x" number of bit positions to generate a shifted intermediate word. The shifted intermediate word and the other of the first and second intermediate words are arithmetically added to generate a bit-counted word of 2.sup.n length representing the number of bits in the word set to binary "1" from the bit-counted word.
    Type: Grant
    Filed: December 30, 1997
    Date of Patent: December 5, 2000
    Assignee: EMC Corporation
    Inventor: Eli Shagam
  • Patent number: 6076126
    Abstract: A shared resource lock mechanism is provided which enables processors in a mullet-processor environment which each share common resources to obtain locks on those resources using a read modify write type transaction which does not at any point in time require the locking of a bus or a memory which contains the lock records used to lock the particular resources.
    Type: Grant
    Filed: June 30, 1997
    Date of Patent: June 13, 2000
    Assignee: EMC Corporation
    Inventor: Eli Shagam
  • Patent number: 6047353
    Abstract: A method of providing synchronized operational information for a host computer and an attached storage system is provided. The method includes providing a trace buffer in a memory of the storage system. A special command is created which allows a host computer to write information to the provided trace buffer. The special command uses a command from the communication protocol command set is a specific way in order to effectuate the trace buffer entry. The trace buffer entry will have a time component based on the storage system time clock. Thus, host activity may be synchronized in time with the storage system activity. In addition to the trace buffer, a statistics table is provided which maintains a log of which applications programs running on specific hosts, accessed the devices of the storage system.
    Type: Grant
    Filed: May 7, 1997
    Date of Patent: April 4, 2000
    Assignee: EMC Corporation
    Inventors: Natan Vishlitzky, Erez Ofer, Eli Shagam, David Shadmon
  • Patent number: 6014517
    Abstract: A system for parsing comments in assembler language source code to identify input and output parameters and script them into wrapper code that transforms the parameters from C (or other higher level language) conventions to assembler conventions for entry to the assembler program and from assembler conventions to C conventions for exit from the assembler program. The comment parser follows the syntax conventions of the assembler to identify text that is intended to be comments. Within the comment text, the comment parser searches for user specified defining terms such as "input", "output", or "at entry", and "at exit", which indicate that one or more input or output parameters are described. Next the comment parser searches for nearby formatters, such as obvious register references "d3" or "a4" in one implementation. The comment parser saves the comments and associated registers in an associative array.
    Type: Grant
    Filed: January 6, 1998
    Date of Patent: January 11, 2000
    Assignee: EMC Corporation
    Inventors: Eli Shagam, Avihu Goral
  • Patent number: 5987550
    Abstract: A shared resource lock mechanism is provided which enables processors in a multi-processor system which each share common resources to obtain locks on those resources using a transactions which minimizes the amount of time system resources are unavailable, while also allowing system resources to be available for other processing tasks.
    Type: Grant
    Filed: June 30, 1998
    Date of Patent: November 16, 1999
    Assignee: EMC Corporation
    Inventor: Eli Shagam