public final class EmbeddedMetaData extends Object
Modifier and Type | Field and Description |
---|---|
static int |
BYTES_IN_REGION |
static int |
LOG_BYTES_IN_REGION |
static int |
LOG_PAGES_IN_REGION |
static int |
PAGES_IN_REGION |
private static Word |
REGION_MASK |
Constructor and Description |
---|
EmbeddedMetaData() |
Modifier and Type | Method and Description |
---|---|
static Address |
getMetaDataBase(Address address)
Given an address, return the beginning of the meta data for the
region containing the address.
|
static Extent |
getMetaDataOffset(Address address,
int logCoverage,
int logAlign)
Given an address, the density (coverage) of a meta data type, and
the granularity (alignment) of the meta data, return the offset
into the meta data the address.
|
public static final int LOG_BYTES_IN_REGION
public static final int BYTES_IN_REGION
private static final Word REGION_MASK
public static final int LOG_PAGES_IN_REGION
public static final int PAGES_IN_REGION
public EmbeddedMetaData()
public static Address getMetaDataBase(Address address)
address
- The address whose meta data is sought.public static Extent getMetaDataOffset(Address address, int logCoverage, int logAlign)
address
- The address whose meta data offset is sought.logCoverage
- The log base two of the coverage of the meta
data in question. For example, a value of 4 would indicate a
coverage of 16; one metadata byte for every 16 bytes of data.logAlign
- The log base two of the alignment or granularity
of the meta-data (it may be arranged in bytes, words, double
words etc).