| java.lang.Object org.apache.harmony.misc.accessors.MemoryAccessor
MemoryAccessor | public class MemoryAccessor (Code) | | The class describes low level memory operation for memory allocation/deallocation
and access.
Type long is used for memory address representation on all platforms.
On 32 bit platforms only low 32 address bits are used,
high bits can have arbitrary value.
|
Field Summary | |
final public static int | BIG_ENDIAN Means high order bytes in larger than byte type memory
representation will have higher addresses in memory than low order bytes. | final public static int | LITTLE_ENDIAN Means high order bytes in larger than byte type memory
representation will have lower addresses in memory than low order bytes. |
Method Summary | |
final public long | findFirstDiff(long addr1, long addr2, int elemSize, long size, boolean reorder) Finds the offset of the first different element in two
memory blocks. | final public void | free(long addr) Releases memory block previously allocated with malloc or realloc. | final native public boolean | getBoolean(long addr) Reads a boolean value from memory address. | final public void | getBoolean(long addr, boolean[] value, int offset, int length) Reads data from memory address in platform byte order into boolean array. | final native public byte | getByte(long addr) Reads a byte value from memory address. | final public void | getByte(long addr, byte[] value, int offset, int length) Reads data from memory address in platform byte order into byte array. | final public int | getCLongSize() Returns the C long size of the current platform in bytes,
may be 4 or 8. | final public char | getChar(long addr) Reads a char value from memory address in a platform byte order. | final public void | getChar(long addr, char[] value, int offset, int length) Reads data from memory address in a platform byte order into char array. | final public void | getChar(long addr, char[] value, int offset, int length, int byteOrder) Reads data from memory address in selected order into char array. | final public char | getChar(long addr, int byteOrder) Reads a char value from memory address in selected order. | final native public double | getDouble(long addr) Reads a double value from memory address in a platform byte order. | final public void | getDouble(long addr, double[] value, int offset, int length) Reads data from memory address in platform byte order into array of doubles. | final public void | getDouble(long addr, double[] value, int offset, int length, int byteOrder) Reads data from memory address in selected byte order into array of doubles. | final public double | getDouble(long addr, int byteOrder) Reads a double value from memory address in selected byte order. | final native public float | getFloat(long addr) Reads a float value from memory address in platform byte order. | final public void | getFloat(long addr, float[] value, int offset, int length) Reads data from memory address in platform byte order into float array. | final public void | getFloat(long addr, float[] value, int offset, int length, int byteOrder) Reads data from memory address in selected byte order into float array. | final public float | getFloat(long addr, int byteOrder) Reads a float value from memory address in selected byte order. | final native public int | getHashCode(long addr, long size) | static MemoryAccessor | getInstance() | final native public int | getInt(long addr) Reads an integer value from memory address in platform byte order. | final public int | getInt(long addr, int byteOrder) Reads an integer value from memory address in selected byte order. | final public void | getInt(long addr, int[] value, int offset, int length) Reads data from memory address in platform byte order into array of integers. | final public void | getInt(long addr, int[] value, int offset, int length, int byteOrder) Reads data from memory address in selected byte order into array of integers. | final native public long | getLong(long addr) Reads a long value from memory address in platform byte order. | final public long | getLong(long addr, int byteOrder) Reads a long value from memory address in selected byte order. | final public void | getLong(long addr, long[] value, int offset, int length) Reads data from memory address in platform byte order into array of longs. | final public void | getLong(long addr, long[] value, int offset, int length, int byteOrder) Reads data from memory address in selected byte order into array of longs. | final public int | getNativeByteOrder() | final native public long | getPointer(long addr) Returns native pointer value from addr. | final public int | getPointerSize() Returns the native pointer size of the current platform in bytes,
may be 4 or 8. | final native public short | getShort(long addr) Reads a short value from memory address in platform byte order. | final public short | getShort(long addr, int byteOrder) Reads a short value from memory address in selected byte order. | final public void | getShort(long addr, short[] value, int offset, int length) Reads data from memory address in platform byte order into short array. | final public void | getShort(long addr, short[] value, int offset, int length, int byteOrder) Reads data from memory address in selected byte order into short array. | final public long | malloc(long size) Allocates memory block in the native heap. | final public int | memcmp(long addr0, long addr1, long size) Compares two memory blocks. | final public long | memcpy(long dst, long src, long size) Copies size bytes from src to dst, scr and dst can't
overlap. | final public long | memmove(long dst, long src, long size) Copies size bytes from src to dst, scr and dst can
overlap. | final public long | memset(long addr, byte fill, long size) Fills the memory block with fill value. | final public long | realloc(long addr, long size) Resizes memory block previously allocated with malloc or realloc. | final native public void | setBoolean(long addr, boolean value) Writes boolean value to memory address. | final public void | setBoolean(long addr, boolean[] value, int offset, int length) Writes data from boolean array to memory address in platform byte order. | final native public void | setByte(long addr, byte value) Writes byte value to memory address. | final public void | setByte(long addr, byte[] value, int offset, int length) Writes data from byte array to memory address in platform byte order. | final public void | setChar(long addr, char value) Writes char value to memory address in platform byte order. | final public void | setChar(long addr, char value, int byteOrder) Writes char value to memory address in selected order. | final public void | setChar(long addr, char[] value, int offset, int length) Writes data from char array to memory address in platform byte order. | final public void | setChar(long addr, char[] value, int offset, int length, int byteOrder) Writes data from char array to memory address in selected byte order. | final native public void | setDouble(long addr, double value) | final public void | setDouble(long addr, double value, int byteOrder) Writes a double value to memory address in selected byte order. | final public void | setDouble(long addr, double[] value, int offset, int length) Writes data from double array to memory address in platform byte order. | final public void | setDouble(long addr, double[] value, int offset, int length, int byteOrder) Writes data from a double array to memory address in selected byte order. | final native public void | setFloat(long addr, float value) Writes a float value to memory address in platform byte order. | final public void | setFloat(long addr, float value, int byteOrder) Writes data to memory address in selected byte order. | final public void | setFloat(long addr, float[] value, int offset, int length) Writes data from float array to memory address in platform byte order. | final public void | setFloat(long addr, float[] value, int offset, int length, int byteOrder) Writes data from float array to memory address in selected byte order. | final native public void | setInt(long addr, int value) Writes an integer value to memory address in platform byte order. | final public void | setInt(long addr, int value, int byteOrder) Writes an integer value to memory address in selected byte order. | final public void | setInt(long addr, int[] value, int offset, int length) Writes data from integer array to memory address in platform byte order. | final public void | setInt(long addr, int[] value, int offset, int length, int byteOrder) Writes data from integer array to memory address in selected byte order. | final native public void | setLong(long addr, long value) Writes a long value to memory address in platform byte order. | final public void | setLong(long addr, long value, int byteOrder) Writes a long value to memory address in selected byte order. | final public void | setLong(long addr, long[] value, int offset, int length) Writes data from long array to memory address in platform byte order. | public void | setLong(long addr, long[] value, int offset, int length, int byteOrder) Writes data from long array to memory address in selected byte order. | final native public void | setPointer(long addr, long value) Writes a native pointer value to addr. | final native public void | setShort(long addr, short value) Writes a short value to memory address in platform byte order. | final public void | setShort(long addr, short value, int byteOrder) Writes a short value to memory address in selected byte order. | final public void | setShort(long addr, short[] value, int offset, int length) Writes data from short array to memory address in platform byte order. | final public void | setShort(long addr, short[] value, int offset, int length, int byteOrder) Writes data from short array to memory address in selected byte order. |
BIG_ENDIAN | final public static int BIG_ENDIAN(Code) | | Means high order bytes in larger than byte type memory
representation will have higher addresses in memory than low order bytes.
|
LITTLE_ENDIAN | final public static int LITTLE_ENDIAN(Code) | | Means high order bytes in larger than byte type memory
representation will have lower addresses in memory than low order bytes.
|
findFirstDiff | final public long findFirstDiff(long addr1, long addr2, int elemSize, long size, boolean reorder)(Code) | | Finds the offset of the first different element in two
memory blocks. If no difference the size is returned. If reorder is set
changes the byte order of first block elements before comparison.
Parameters: addr1 - start address of the first block Parameters: addr2 - start address of the second block Parameters: elemSize - size of the element can be 1, 2, 4, 8 Parameters: size - number of elements to compare Parameters: reorder - blocks are in different byte order index of the first different element |
free | final public void free(long addr)(Code) | | Releases memory block previously allocated with malloc or realloc.
Parameters: addr - start address of block |
getBoolean | final native public boolean getBoolean(long addr)(Code) | | Reads a boolean value from memory address.
Parameters: addr - memory address boolean value |
getBoolean | final public void getBoolean(long addr, boolean[] value, int offset, int length)(Code) | | Reads data from memory address in platform byte order into boolean array.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read |
getByte | final native public byte getByte(long addr)(Code) | | Reads a byte value from memory address.
Parameters: addr - memory address byte value |
getByte | final public void getByte(long addr, byte[] value, int offset, int length)(Code) | | Reads data from memory address in platform byte order into byte array.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read |
getCLongSize | final public int getCLongSize()(Code) | | Returns the C long size of the current platform in bytes,
may be 4 or 8.
|
getChar | final public char getChar(long addr)(Code) | | Reads a char value from memory address in a platform byte order.
Parameters: addr - memory address memory value |
getChar | final public void getChar(long addr, char[] value, int offset, int length)(Code) | | Reads data from memory address in a platform byte order into char array.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read |
getChar | final public void getChar(long addr, char[] value, int offset, int length, int byteOrder)(Code) | | Reads data from memory address in selected order into char array.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
getChar | final public char getChar(long addr, int byteOrder)(Code) | | Reads a char value from memory address in selected order. *
Parameters: addr - memory address Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN memory value |
getDouble | final native public double getDouble(long addr)(Code) | | Reads a double value from memory address in a platform byte order.
Parameters: addr - memory address memory value |
getDouble | final public void getDouble(long addr, double[] value, int offset, int length)(Code) | | Reads data from memory address in platform byte order into array of doubles.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read |
getDouble | final public void getDouble(long addr, double[] value, int offset, int length, int byteOrder)(Code) | | Reads data from memory address in selected byte order into array of doubles.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
getDouble | final public double getDouble(long addr, int byteOrder)(Code) | | Reads a double value from memory address in selected byte order.
Parameters: addr - memory address Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN memory value |
getFloat | final native public float getFloat(long addr)(Code) | | Reads a float value from memory address in platform byte order.
Parameters: addr - memory address memory value |
getFloat | final public void getFloat(long addr, float[] value, int offset, int length)(Code) | | Reads data from memory address in platform byte order into float array.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read |
getFloat | final public void getFloat(long addr, float[] value, int offset, int length, int byteOrder)(Code) | | Reads data from memory address in selected byte order into float array.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
getFloat | final public float getFloat(long addr, int byteOrder)(Code) | | Reads a float value from memory address in selected byte order.
Parameters: addr - memory address Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN memory value |
getHashCode | final native public int getHashCode(long addr, long size)(Code) | | Calculates the hash function of the block of bytes
Parameters: addr - memory address Parameters: size - number of bytes to process hash function value |
getInt | final native public int getInt(long addr)(Code) | | Reads an integer value from memory address in platform byte order.
Parameters: addr - memory address memory value |
getInt | final public int getInt(long addr, int byteOrder)(Code) | | Reads an integer value from memory address in selected byte order.
Parameters: addr - memory address Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN memory value |
getInt | final public void getInt(long addr, int[] value, int offset, int length)(Code) | | Reads data from memory address in platform byte order into array of integers.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read |
getInt | final public void getInt(long addr, int[] value, int offset, int length, int byteOrder)(Code) | | Reads data from memory address in selected byte order into array of integers.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
getLong | final native public long getLong(long addr)(Code) | | Reads a long value from memory address in platform byte order.
Parameters: addr - memory address memory value |
getLong | final public long getLong(long addr, int byteOrder)(Code) | | Reads a long value from memory address in selected byte order.
Parameters: addr - memory address Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN memory value |
getLong | final public void getLong(long addr, long[] value, int offset, int length)(Code) | | Reads data from memory address in platform byte order into array of longs.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read |
getLong | final public void getLong(long addr, long[] value, int offset, int length, int byteOrder)(Code) | | Reads data from memory address in selected byte order into array of longs.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
getNativeByteOrder | final public int getNativeByteOrder()(Code) | | Returns byte order used by platform
LITTLE_ENDIAN or BIG_ENDIAN |
getPointer | final native public long getPointer(long addr)(Code) | | Returns native pointer value from addr.
Parameters: addr - address in memory memory value |
getPointerSize | final public int getPointerSize()(Code) | | Returns the native pointer size of the current platform in bytes,
may be 4 or 8.
|
getShort | final native public short getShort(long addr)(Code) | | Reads a short value from memory address in platform byte order.
Parameters: addr - memory address memory value |
getShort | final public short getShort(long addr, int byteOrder)(Code) | | Reads a short value from memory address in selected byte order.
Parameters: addr - memory address Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN memory value |
getShort | final public void getShort(long addr, short[] value, int offset, int length)(Code) | | Reads data from memory address in platform byte order into short array.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read |
getShort | final public void getShort(long addr, short[] value, int offset, int length, int byteOrder)(Code) | | Reads data from memory address in selected byte order into short array.
Parameters: addr - data start address in memory Parameters: value - array to save data Parameters: offset - initial offset in java array Parameters: length - number of array elements to read Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
malloc | final public long malloc(long size)(Code) | | Allocates memory block in the native heap.
Parameters: size - size of block in bytes start address of allocated block |
memcmp | final public int memcmp(long addr0, long addr1, long size)(Code) | | Compares two memory blocks.
Parameters: addr0 - start address of block 0 Parameters: addr1 - start address of block 1 Parameters: size - size in bytes 0 if equal byte by byte, < 0 if block 0 less than block 1,> 0 if block 0 greater than block 1. |
memcpy | final public long memcpy(long dst, long src, long size)(Code) | | Copies size bytes from src to dst, scr and dst can't
overlap.
Parameters: dst - start address of destination block Parameters: src - start address of source block Parameters: size - number of bytes to copy dst |
memmove | final public long memmove(long dst, long src, long size)(Code) | | Copies size bytes from src to dst, scr and dst can
overlap.
Parameters: dst - start address of destination block Parameters: src - start address of source block Parameters: size - number of bytes to copy dst |
memset | final public long memset(long addr, byte fill, long size)(Code) | | Fills the memory block with fill value.
Parameters: addr - start address of block Parameters: fill - fill value Parameters: size - number of bytes to fill addr |
realloc | final public long realloc(long addr, long size)(Code) | | Resizes memory block previously allocated with malloc or realloc.
Parameters: addr - start address of block Parameters: size - new size in bytes new start address of block |
setBoolean | final native public void setBoolean(long addr, boolean value)(Code) | | Writes boolean value to memory address.
Parameters: addr - memory address Parameters: value - new memory value |
setBoolean | final public void setBoolean(long addr, boolean[] value, int offset, int length)(Code) | | Writes data from boolean array to memory address in platform byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write |
setByte | final native public void setByte(long addr, byte value)(Code) | | Writes byte value to memory address.
Parameters: addr - memory address Parameters: value - new memory value |
setByte | final public void setByte(long addr, byte[] value, int offset, int length)(Code) | | Writes data from byte array to memory address in platform byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write |
setChar | final public void setChar(long addr, char value)(Code) | | Writes char value to memory address in platform byte order.
Parameters: addr - memory address Parameters: value - new memory value |
setChar | final public void setChar(long addr, char value, int byteOrder)(Code) | | Writes char value to memory address in selected order.
Parameters: addr - memory address Parameters: value - new memory value Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setChar | final public void setChar(long addr, char[] value, int offset, int length)(Code) | | Writes data from char array to memory address in platform byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write |
setChar | final public void setChar(long addr, char[] value, int offset, int length, int byteOrder)(Code) | | Writes data from char array to memory address in selected byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setDouble | final native public void setDouble(long addr, double value)(Code) | | Writes a double value to memory address in platform byte order,
Parameters: addr - memory address Parameters: value - new memory value |
setDouble | final public void setDouble(long addr, double value, int byteOrder)(Code) | | Writes a double value to memory address in selected byte order.
Parameters: addr - memory address Parameters: value - new memory value Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setDouble | final public void setDouble(long addr, double[] value, int offset, int length)(Code) | | Writes data from double array to memory address in platform byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write |
setDouble | final public void setDouble(long addr, double[] value, int offset, int length, int byteOrder)(Code) | | Writes data from a double array to memory address in selected byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setFloat | final native public void setFloat(long addr, float value)(Code) | | Writes a float value to memory address in platform byte order.
Parameters: addr - memory address Parameters: value - new memory value |
setFloat | final public void setFloat(long addr, float value, int byteOrder)(Code) | | Writes data to memory address in selected byte order.
Parameters: addr - memory address Parameters: value - new memory value Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setFloat | final public void setFloat(long addr, float[] value, int offset, int length)(Code) | | Writes data from float array to memory address in platform byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write |
setFloat | final public void setFloat(long addr, float[] value, int offset, int length, int byteOrder)(Code) | | Writes data from float array to memory address in selected byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setInt | final native public void setInt(long addr, int value)(Code) | | Writes an integer value to memory address in platform byte order.
Parameters: addr - memory address Parameters: value - new memory value |
setInt | final public void setInt(long addr, int value, int byteOrder)(Code) | | Writes an integer value to memory address in selected byte order.
Parameters: addr - memory address Parameters: value - new memory value Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setInt | final public void setInt(long addr, int[] value, int offset, int length)(Code) | | Writes data from integer array to memory address in platform byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write |
setInt | final public void setInt(long addr, int[] value, int offset, int length, int byteOrder)(Code) | | Writes data from integer array to memory address in selected byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setLong | final native public void setLong(long addr, long value)(Code) | | Writes a long value to memory address in platform byte order.
Parameters: addr - memory address Parameters: value - new memory value |
setLong | final public void setLong(long addr, long value, int byteOrder)(Code) | | Writes a long value to memory address in selected byte order.
Parameters: addr - memory address Parameters: value - new memory value Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setLong | final public void setLong(long addr, long[] value, int offset, int length)(Code) | | Writes data from long array to memory address in platform byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write |
setLong | public void setLong(long addr, long[] value, int offset, int length, int byteOrder)(Code) | | Writes data from long array to memory address in selected byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setPointer | final native public void setPointer(long addr, long value)(Code) | | Writes a native pointer value to addr.
Parameters: addr - address in memory Parameters: value - new memory value |
setShort | final native public void setShort(long addr, short value)(Code) | | Writes a short value to memory address in platform byte order.
Parameters: addr - memory address Parameters: value - new memory value |
setShort | final public void setShort(long addr, short value, int byteOrder)(Code) | | Writes a short value to memory address in selected byte order.
Parameters: addr - memory address Parameters: value - new memory value Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
setShort | final public void setShort(long addr, short[] value, int offset, int length)(Code) | | Writes data from short array to memory address in platform byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write |
setShort | final public void setShort(long addr, short[] value, int offset, int length, int byteOrder)(Code) | | Writes data from short array to memory address in selected byte order.
Parameters: addr - data start address in memory Parameters: value - data array Parameters: offset - initial offset in java array Parameters: length - number of array elements to write Parameters: byteOrder - LITTLE_ENDIAN or BIG_ENDIAN |
|
|