Package ghidra.pcode.memstate
Class MemoryPage
java.lang.Object
ghidra.pcode.memstate.MemoryPage
Deprecated, for removal: This API element is subject to removal in a future version.
MemoryPage is allows the contents/data of a memory page
to be maintained along with an initializedMask. Each bit within the
initializedMask corresponds to a data byte within the page. A null
mask indicates that all data within the page is initialized. A one-bit
within the mask indicates that the corresponding data byte is initialized.-
Field Summary
FieldsModifier and TypeFieldDescriptionfinal byte[]Deprecated, for removal: This API element is subject to removal in a future version. -
Constructor Summary
ConstructorsConstructorDescriptionMemoryPage(byte[] bytes) Deprecated, for removal: This API element is subject to removal in a future version.Construct a memory page with an existing data bytes bufferMemoryPage(int pageSize) Deprecated, for removal: This API element is subject to removal in a future version.Construct a new fully initialized page containing all zero (0) byte data. -
Method Summary
Modifier and TypeMethodDescriptionstatic intgetInitializedByteCount(byte[] initializedMask, int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Determine how many leading bytes of a specified page region is marked as initialized.intgetInitializedByteCount(int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Get number of leading bytes within page range which have been initialized.byte[]Deprecated, for removal: This API element is subject to removal in a future version.static byte[]getInitializedMask(int pageSize, boolean initialized) Deprecated, for removal: This API element is subject to removal in a future version.Generate an initialized mask for the specified page sizestatic byte[]getInitializedMask(int pageSize, int offset, int size, boolean initialized) Deprecated, for removal: This API element is subject to removal in a future version.Generate an initialized mask for the specified page size.voidDeprecated, for removal: This API element is subject to removal in a future version.Mark entire page as uninitializedstatic voidsetInitialized(byte[] initializedMask, int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Mark specified page region as initialized.voidsetInitialized(int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Mark specified page region as initialized.voidsetInitialized(int pageOffset, int size, byte[] maskUpdate) Deprecated, for removal: This API element is subject to removal in a future version.Update initialization maskvoidDeprecated, for removal: This API element is subject to removal in a future version.Mark entire page as uninitializedstatic voidsetUninitialized(byte[] initializedMask, int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Mark specified page region as uninitialized.voidsetUninitialized(int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Mark specified page region as uninitialized.
-
Field Details
-
data
public final byte[] dataDeprecated, for removal: This API element is subject to removal in a future version.
-
-
Constructor Details
-
MemoryPage
public MemoryPage(int pageSize) Deprecated, for removal: This API element is subject to removal in a future version.Construct a new fully initialized page containing all zero (0) byte data. -
MemoryPage
public MemoryPage(byte[] bytes) Deprecated, for removal: This API element is subject to removal in a future version.Construct a memory page with an existing data bytes buffer- Parameters:
bytes- buffer
-
-
Method Details
-
getInitializedMask
public byte[] getInitializedMask()Deprecated, for removal: This API element is subject to removal in a future version. -
setUninitialized
public void setUninitialized()Deprecated, for removal: This API element is subject to removal in a future version.Mark entire page as uninitialized -
setInitialized
public void setInitialized()Deprecated, for removal: This API element is subject to removal in a future version.Mark entire page as uninitialized -
setInitialized
public void setInitialized(int pageOffset, int size, byte[] maskUpdate) Deprecated, for removal: This API element is subject to removal in a future version.Update initialization mask- Parameters:
pageOffset-size-maskUpdate-
-
setInitialized
public void setInitialized(int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Mark specified page region as initialized.- Parameters:
pageOffset-size-
-
setUninitialized
public void setUninitialized(int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Mark specified page region as uninitialized.- Parameters:
pageOffset-size-
-
getInitializedByteCount
public int getInitializedByteCount(int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Get number of leading bytes within page range which have been initialized.- Parameters:
pageOffset-size-- Returns:
- number of leading bytes within page range which have been initialized.
-
getInitializedMask
public static byte[] getInitializedMask(int pageSize, boolean initialized) Deprecated, for removal: This API element is subject to removal in a future version.Generate an initialized mask for the specified page size- Parameters:
pageSize-initialized-- Returns:
-
getInitializedMask
public static byte[] getInitializedMask(int pageSize, int offset, int size, boolean initialized) Deprecated, for removal: This API element is subject to removal in a future version.Generate an initialized mask for the specified page size. The region is identified by offset and size. The remaining portions of the mask will be set based upon !initialized.- Parameters:
pageSize-offset-size-initialized-- Returns:
-
setInitialized
public static void setInitialized(byte[] initializedMask, int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Mark specified page region as initialized.- Parameters:
initializedMask-pageOffset-size-
-
setUninitialized
public static void setUninitialized(byte[] initializedMask, int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Mark specified page region as uninitialized.- Parameters:
initializedMask-pageOffset-size-
-
getInitializedByteCount
public static int getInitializedByteCount(byte[] initializedMask, int pageOffset, int size) Deprecated, for removal: This API element is subject to removal in a future version.Determine how many leading bytes of a specified page region is marked as initialized. Valid page region defined by pageOffset and size is assumed.- Parameters:
initializedMask-pageOffset-size-- Returns:
- number of leading bytes at pageOffset (upto size) are initialized.
-