- java.lang.Object
-
- com.ibm.dtfj.corereaders.MemoryRange
-
- All Implemented Interfaces:
Comparable
public class MemoryRange extends Object implements Comparable
Dumps contain lots of memory - segmented across a range of virtual addresses.......
-
-
Constructor Summary
Constructors Constructor Description MemoryRange(long virtualAddress, long fileOffset, long size)
MemoryRange(long virtualAddress, long fileOffset, long size, int asid)
MemoryRange(long virtualAddress, long fileOffset, long size, int asid, boolean isShared, boolean isReadOnly, boolean isExecutable)
MemoryRange(long virtualAddress, long fileOffset, long size, int asid, boolean isShared, boolean isReadOnly, boolean isExecutable, boolean inCoreFile)
MemoryRange(MemoryRange range, int asid)
Copy constructor, used when copying shared memory ranges into another address space
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(Object o)
Compares this object with the specified object for order.boolean
contains(int asid, long address)
boolean
contains(long address)
int
getAsid()
long
getFileOffset()
DumpReader
getLibraryReader()
long
getSize()
long
getVirtualAddress()
boolean
isExecutable()
boolean
isInCoreFile()
boolean
isReadOnly()
boolean
isShared()
void
setLibraryReader(DumpReader libraryReader)
Set the DumpReader for this MemoryRange
-
-
-
Constructor Detail
-
MemoryRange
public MemoryRange(long virtualAddress, long fileOffset, long size)
-
MemoryRange
public MemoryRange(long virtualAddress, long fileOffset, long size, int asid)
-
MemoryRange
public MemoryRange(long virtualAddress, long fileOffset, long size, int asid, boolean isShared, boolean isReadOnly, boolean isExecutable)
-
MemoryRange
public MemoryRange(long virtualAddress, long fileOffset, long size, int asid, boolean isShared, boolean isReadOnly, boolean isExecutable, boolean inCoreFile)
-
MemoryRange
public MemoryRange(MemoryRange range, int asid)
Copy constructor, used when copying shared memory ranges into another address space
-
-
Method Detail
-
contains
public boolean contains(long address)
-
contains
public boolean contains(int asid, long address)
-
getFileOffset
public long getFileOffset()
- Returns:
- the file offset
-
getSize
public long getSize()
- Returns:
- the number of bytes in this MemoryRange
-
getVirtualAddress
public long getVirtualAddress()
- Returns:
- the base virtual address
-
isInCoreFile
public boolean isInCoreFile()
- Returns:
- true if this MemoryRange is located in the core file
-
getLibraryReader
public DumpReader getLibraryReader()
- Returns:
- the DumpReader for this MemoryRange
-
setLibraryReader
public void setLibraryReader(DumpReader libraryReader)
Set the DumpReader for this MemoryRange
-
getAsid
public int getAsid()
- Returns:
-
isExecutable
public boolean isExecutable() throws MemoryAccessException
- Returns:
- true if this MemoryRange is marked executable
- Throws:
MemoryAccessException
-
isReadOnly
public boolean isReadOnly() throws MemoryAccessException
- Returns:
- true if this MemoryRange is marked read-only
- Throws:
MemoryAccessException
-
isShared
public boolean isShared() throws MemoryAccessException
- Returns:
- true if this MemoryRange is marked shared
- Throws:
MemoryAccessException
-
compareTo
public int compareTo(Object o)
Description copied from interface:java.lang.Comparable
Compares this object with the specified object for order. Returns a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.The implementor must ensure
sgn(x.compareTo(y)) == -sgn(y.compareTo(x))
for allx
andy
. (This implies thatx.compareTo(y)
must throw an exception iffy.compareTo(x)
throws an exception.)The implementor must also ensure that the relation is transitive:
(x.compareTo(y) > 0 && y.compareTo(z) > 0)
impliesx.compareTo(z) > 0
.Finally, the implementor must ensure that
x.compareTo(y)==0
implies thatsgn(x.compareTo(z)) == sgn(y.compareTo(z))
, for allz
.It is strongly recommended, but not strictly required that
(x.compareTo(y)==0) == (x.equals(y))
. Generally speaking, any class that implements theComparable
interface and violates this condition should clearly indicate this fact. The recommended language is "Note: this class has a natural ordering that is inconsistent with equals."In the foregoing description, the notation
sgn(
expression)
designates the mathematical signum function, which is defined to return one of-1
,0
, or1
according to whether the value of expression is negative, zero, or positive, respectively.- Specified by:
compareTo
in interfaceComparable
- Parameters:
o
- the object to be compared.- Returns:
- Virtual address comparator.
-
-