Module openj9.dtfj

Class ELFMemorySource

All Implemented Interfaces:
IDetailedMemoryRange, IMemoryRange, IMemorySource, Comparable<IMemoryRange>

public class ELFMemorySource extends ProtectedMemoryRange implements IMemorySource, IDetailedMemoryRange
Memory source that gets its data from an ELFFile.
  • Method Details

    • getAddressSpaceId

      public int getAddressSpaceId()
      Specified by:
      getAddressSpaceId in interface IMemoryRange
      Returns:
      Address space ID that this range belongs to.
    • getBytes

      public int getBytes(long address, byte[] buffer, int offset, int length) throws MemoryFault
      Description copied from interface: IMemorySource
      Reads data from the memory range
      Specified by:
      getBytes in interface IMemorySource
      Parameters:
      address - Starting address
      buffer - Buffer to read into
      offset - Offset in buffer to write to
      length - Number of bytes to read
      Returns:
      Bytes read
      Throws:
      MemoryFault
    • getName

      public String getName()
      Specified by:
      getName in interface IMemoryRange
      Returns:
      Name of this range (e.g. .text or stack), or null if range is unnamed.
    • getProperties

      public Properties getProperties()
      Specified by:
      getProperties in interface IDetailedMemoryRange
    • isExecutable

      public boolean isExecutable()
      Specified by:
      isExecutable in interface IMemoryRange
    • isReadOnly

      public boolean isReadOnly()
      Assuming that just because something is executable doesn't stop it being read only. (ReadOnly is not actually a very good property to expose since it relies on the lack of other properties.)
      Specified by:
      isReadOnly in interface IMemoryRange