java.lang.Object
com.ibm.j9ddr.corereaders.memory.BaseMemoryRange
com.ibm.j9ddr.corereaders.memory.ProtectedMemoryRange
com.ibm.j9ddr.corereaders.elf.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.
-
Field Summary
Fields declared in class com.ibm.j9ddr.corereaders.memory.ProtectedMemoryRange
executable, readOnly, shared
Fields declared in class com.ibm.j9ddr.corereaders.memory.BaseMemoryRange
baseAddress, size
Fields declared in interface com.ibm.j9ddr.corereaders.memory.IDetailedMemoryRange
EXECUTABLE, READABLE, WRITABLE
-
Method Summary
Methods declared in class com.ibm.j9ddr.corereaders.memory.ProtectedMemoryRange
isExecutable, isShared
Methods declared in class com.ibm.j9ddr.corereaders.memory.BaseMemoryRange
compareTo, contains, getBaseAddress, getSize, getTopAddress, isBacked, isSubRange, overlaps
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods declared in interface java.lang.Comparable
compareTo
Methods declared in interface com.ibm.j9ddr.corereaders.memory.IMemoryRange
contains, getBaseAddress, getSize, getTopAddress, isShared, isSubRange, overlaps
Methods declared in interface com.ibm.j9ddr.corereaders.memory.IMemorySource
isBacked
-
Method Details
-
getAddressSpaceId
public int getAddressSpaceId()- Specified by:
getAddressSpaceId
in interfaceIMemoryRange
- Returns:
- Address space ID that this range belongs to.
-
getBytes
Description copied from interface:IMemorySource
Reads data from the memory range- Specified by:
getBytes
in interfaceIMemorySource
- Parameters:
address
- Starting addressbuffer
- Buffer to read intooffset
- Offset in buffer to write tolength
- Number of bytes to read- Returns:
- Bytes read
- Throws:
MemoryFault
-
getName
- Specified by:
getName
in interfaceIMemoryRange
- Returns:
- Name of this range (e.g. .text or stack), or null if range is unnamed.
-
getProperties
- Specified by:
getProperties
in interfaceIDetailedMemoryRange
-
isExecutable
public boolean isExecutable()- Specified by:
isExecutable
in interfaceIMemoryRange
-
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 interfaceIMemoryRange
-