Class BufferedMemory
java.lang.Object
com.ibm.j9ddr.corereaders.memory.SearchableMemory
com.ibm.j9ddr.corereaders.memory.AbstractMemory
com.ibm.j9ddr.corereaders.memory.BufferedMemory
- All Implemented Interfaces:
IAddressSpace, IMemory, IProcess
Object representing a single live
process model where a section of
memory in a the process can be represented
in a byte buffer as its source
- See Also:
-
Field Summary
Fields declared in class AbstractMemory
decoratorMappingTable, memorySourcesModifier and TypeFieldDescriptionprotected final Map<IMemorySource, IMemorySource> protected final MemorySourceTableFields declared in class SearchableMemory
rangeTable -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintintgetCore()The core file from which this address space has been created fromCollection<? extends IModule> longgetPointerAt(long address) getProcedureNameForAddress(long address) Equivalent to getProcedureNameForAddress(address, false).getProcedureNameForAddress(long address, boolean dtfjFormat) longintCollection<? extends IOSThread> booleanMethods declared in class AbstractMemory
addMemorySource, addMemorySources, getByteAt, getByteOrder, getBytesAt, getBytesAt, getIntAt, getLongAt, getMemoryRanges, getProperties, getShortAt, isExecutable, isReadOnly, isShared, removeMemorySourceModifier and TypeMethodDescriptionvoidaddMemorySource(IMemorySource source) voidaddMemorySources(Collection<? extends IMemorySource> memorySources) bytegetByteAt(long address) intgetBytesAt(long address, byte[] buffer) intgetBytesAt(long address, byte[] buffer, int offset, int length) intgetIntAt(long address) longgetLongAt(long address) getProperties(long address) shortgetShortAt(long address) booleanisExecutable(long address) booleanisReadOnly(long address) booleanisShared(long address) voidremoveMemorySource(IMemorySource source) Methods declared in class SearchableMemory
buildRangeTable, findPattern, mergeRangeTableModifier and TypeMethodDescriptionprotected long[][]longfindPattern(byte[] whatBytes, int alignment, long startFrom) protected intmergeRangeTable(long[][] rangeTable) Merges consecutive ranges to build a list of ranges to read
-
Constructor Details
-
BufferedMemory
-
-
Method Details
-
getPlatform
- Specified by:
getPlatformin interfaceIMemory
-
getAddressSpace
- Specified by:
getAddressSpacein interfaceIProcess- Returns:
- Address space this process uses.
-
getPointerAt
- Specified by:
getPointerAtin interfaceIProcess- Throws:
MemoryFault
-
bytesPerPointer
public int bytesPerPointer()- Specified by:
bytesPerPointerin interfaceIProcess- Returns:
- Number of bytes in a pointer
-
getCommandLine
- Specified by:
getCommandLinein interfaceIProcess- Returns:
- Process command line or null if the data is unavailable
- Throws:
CorruptDataExceptionDataUnavailableException
-
getEnvironmentVariables
- Specified by:
getEnvironmentVariablesin interfaceIProcess- Returns:
- Properties containing environment variables name=value pairs
- Throws:
CorruptDataExceptionDataUnavailableException
-
getModules
- Specified by:
getModulesin interfaceIProcess- Throws:
CorruptDataException
-
getExecutable
- Specified by:
getExecutablein interfaceIProcess- Throws:
CorruptDataException
-
getProcessId
- Specified by:
getProcessIdin interfaceIProcess- Throws:
CorruptDataException
-
getProcedureNameForAddress
public String getProcedureNameForAddress(long address) throws DataUnavailableException, CorruptDataException Equivalent to getProcedureNameForAddress(address, false). Default behaviour is to return DDR format strings for symbols.- Specified by:
getProcedureNameForAddressin interfaceIProcess- Throws:
DataUnavailableExceptionCorruptDataException
-
getProcedureNameForAddress
public String getProcedureNameForAddress(long address, boolean dtfjFormat) throws DataUnavailableException, CorruptDataException - Specified by:
getProcedureNameForAddressin interfaceIProcess- Throws:
DataUnavailableExceptionCorruptDataException
-
getThreads
- Specified by:
getThreadsin interfaceIProcess- Throws:
CorruptDataException
-
getSignalNumber
- Specified by:
getSignalNumberin interfaceIProcess- Throws:
DataUnavailableException
-
isFailingProcess
- Specified by:
isFailingProcessin interfaceIProcess- Throws:
DataUnavailableException
-
getCore
Description copied from interface:IAddressSpaceThe core file from which this address space has been created from- Specified by:
getCorein interfaceIAddressSpace- Returns:
- the core file or null if this address space is not backed by an underlying core file
-
getProcesses
- Specified by:
getProcessesin interfaceIAddressSpace- Returns:
- List of processes using this address space.
-
getAddressSpaceId
public int getAddressSpaceId()- Specified by:
getAddressSpaceIdin interfaceIAddressSpace- Returns:
- Numeric ID of address space.
-