-
- All Superinterfaces:
Comparable<IMemoryRange>
- All Known Subinterfaces:
IDetailedMemoryRange,IMemorySource,INamedMemoryRange
- All Known Implementing Classes:
BaseMemoryRange,BufferedMemorySource,DetailedDumpMemorySource,DumpMemorySource,ELFMemorySource,MemoryRange,ProtectedMemoryRange,UnbackedMemorySource
public interface IMemoryRange extends Comparable<IMemoryRange>
An optionally named range of memory with permissions.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description booleancontains(long address)Checks whether an address is present in this memory rangeintgetAddressSpaceId()longgetBaseAddress()StringgetName()longgetSize()longgetTopAddress()booleanisBacked()booleanisExecutable()booleanisReadOnly()booleanisShared()booleanisSubRange(IMemoryRange other)booleanoverlaps(IMemoryRange other)-
Methods declared in interface java.lang.Comparable
compareTo
-
-
-
-
Method Detail
-
getAddressSpaceId
int getAddressSpaceId()
- Returns:
- Address space ID that this range belongs to.
-
getBaseAddress
long getBaseAddress()
- Returns:
- Base address of this memory range
-
getTopAddress
long getTopAddress()
- Returns:
- Largest address in this memory range
-
getSize
long getSize()
- Returns:
- Size of this memory range, bytes
-
isShared
boolean isShared()
-
isExecutable
boolean isExecutable()
-
isReadOnly
boolean isReadOnly()
-
isBacked
boolean isBacked()
-
contains
boolean contains(long address)
Checks whether an address is present in this memory range- Parameters:
address- Address to test- Returns:
- True if the memory range contains address, false otherwise.
-
overlaps
boolean overlaps(IMemoryRange other)
- Parameters:
other-- Returns:
- True if other shares any addresses with this range.
-
isSubRange
boolean isSubRange(IMemoryRange other)
- Parameters:
other-- Returns:
- True if other models a memory range that sits entirely within this range
-
getName
String getName()
- Returns:
- Name of this range (e.g. .text or stack), or null if range is unnamed.
-
-