@Deprecated public class LTPhysicalMemory extends ScopedMemory
LTPhysicalMemory
allows objects to be
allocated from a range of physical memory with particular attributes,
determined by their memory type. This memory area has the same
semantics as ScopedMemory
memory areas, and the same
performance restrictions as LTMemory
.
No provision is made for sharing object in
LTPhysicalMemory
with entities outside the JVM that
creates them, and, while the memory backing an instance of
LTPhysicalMemory
could be shared by multiple JVMs, the
class does not support such sharing.
Methods from LTPhysicalMemory
should be overridden
only by methods that use super
.
Constructor and Description |
---|
LTPhysicalMemory(java.lang.Object type,
long size)
Deprecated.
Equivalent to
LTPhysicalMemory(Object, long, long, Runnable) with
the argument list (type, next, size, null) , where
next is the beginning of the next best fit in the physical
memory range. |
LTPhysicalMemory(java.lang.Object type,
long base,
long size)
Deprecated.
Equivalent to
LTPhysicalMemory(Object, long, long, Runnable) with the
the argument list (type, base, size, null) . |
LTPhysicalMemory(java.lang.Object type,
long base,
long size,
java.lang.Runnable logic)
Deprecated.
Creates an instance of
LTPhysicalMemory with the given
parameters. |
LTPhysicalMemory(java.lang.Object type,
long size,
java.lang.Runnable logic)
Deprecated.
Equivalent to
LTPhysicalMemory(Object, long, long, Runnable)
with the argument list (type, next, size, logic) , where
next is the beginning of the next best fit in the physical
memory range. |
LTPhysicalMemory(java.lang.Object type,
long base,
SizeEstimator size)
Deprecated.
Equivalent to
LTPhysicalMemory(Object, long, long, Runnable) with
the argument list (type, base, size.getEstimate(), null) . |
LTPhysicalMemory(java.lang.Object type,
long base,
SizeEstimator size,
java.lang.Runnable logic)
Deprecated.
Equivalent to
LTPhysicalMemory(Object, long, long, Runnable) with
the argument list (type, base, size.getEstimate(), logic) . |
LTPhysicalMemory(java.lang.Object type,
SizeEstimator size)
Deprecated.
Equivalent to
LTPhysicalMemory(Object, long, long, Runnable) with
the argument list (type, next, size.getEstimate(), null) , where
next is the beginning of the next best fit in the physical
memory range. |
LTPhysicalMemory(java.lang.Object type,
SizeEstimator size,
java.lang.Runnable logic)
Deprecated.
Equivalent to
LTPhysicalMemory(Object, long, long, Runnable)
with the argument list (type, next, size.getEstimate(), logic) ,
where next is the beginning of the next best fit in the physical
memory range. |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
toString()
Deprecated.
Creates a string describing this object.
|
enter, enter, executeInArea, getMaximumSize, getPortal, getReferenceCount, join, join, joinAndEnter, joinAndEnter, joinAndEnter, joinAndEnter, newArray, newInstance, newInstance, setPortal
enter, enter, enter, enter, enter, executeInArea, executeInArea, executeInArea, executeInArea, executeInArea, getMemoryArea, mayHoldReferenceTo, mayHoldReferenceTo, memoryConsumed, memoryRemaining, newArrayInArea, size
public LTPhysicalMemory(java.lang.Object type, long base, long size, java.lang.Runnable logic)
LTPhysicalMemory
with the given
parameters.type
- An instance of Object
representing the
type of memory required, e.g., dma, shared,
used to define the base address and control the
mapping. When the required memory has more than one
attribute, type
may be an array of
objects. When type
is null
or a
reference to an array with no entries, any type of memory
is acceptable. Note that type
values are
compared by reference (==), not by value
(equals
).base
- The physical memory address of the area.size
- The size of the area in bytes.logic
- The run()
method of this object will be
called whenever MemoryArea.enter()
is called. When
logic
is null
,
logic
must be supplied when the memory area
is entered.SizeOutOfBoundsException
- when the implementation detects that base
plus
size
extends
beyond physically addressable memory.StaticSecurityException
- when the application doesn't have
permissions to access physical memory or the given type of
memory.java.lang.IllegalArgumentException
- when size
is less than zero.OffsetOutOfBoundsException
- when the address is invalid.UnsupportedPhysicalMemoryException
- when the underlying
hardware does not support the given type, or when no matching
PhysicalMemoryTypeFilter
has been registered with
the PhysicalMemoryManager
.MemoryTypeConflictException
- when the specified base does not point to
memory that matches the requested type, or when
type
specifies
incompatible memory attributes.MemoryInUseException
- when the specified memory is already in use.IllegalAssignmentError
- when storing logic
in this
would
violate the assignment rules.PhysicalMemoryManager
public LTPhysicalMemory(java.lang.Object type, long base, SizeEstimator size, java.lang.Runnable logic)
LTPhysicalMemory(Object, long, long, Runnable)
with
the argument list (type, base, size.getEstimate(), logic)
.type
- An instance of Object
representing the
type of memory required, e.g., dma, shared,
used to define the base address and control the
mapping. When the required memory has more than one
attribute, type
may be an array of
objects. When type
is null
or a
reference to an array with no entries, any type of memory
is acceptable. Note that type
values are
compared by reference (==), not by value
(equals
).base
- The physical memory address of the area.size
- A size estimator for this memory area.logic
- The run()
method of this object will be
called whenever MemoryArea.enter()
is called. When
logic
is null
,
logic
must be supplied when the memory area
is entered.StaticSecurityException
- when the application doesn't have
permissions to access physical memory or the given type of
memory.SizeOutOfBoundsException
- when the implementation detects that base
plus
the size estimate extends beyond physically addressable memory.OffsetOutOfBoundsException
- when the address is invalid.UnsupportedPhysicalMemoryException
- when the underlying
hardware does not support the given type, or when no matching
PhysicalMemoryTypeFilter
has been registered with
the PhysicalMemoryManager
.MemoryTypeConflictException
- when the specified base does not point to
memory that matches the requested type, or when
type
specifies
incompatible memory attributes.MemoryInUseException
- when the specified memory is already in use.java.lang.IllegalArgumentException
- when size
is null
,
or size.getEstimate()
is negative.IllegalAssignmentError
- when storing logic
in this
would
violate the assignment rules.PhysicalMemoryManager
public LTPhysicalMemory(java.lang.Object type, long base, long size)
LTPhysicalMemory(Object, long, long, Runnable)
with the
the argument list (type, base, size, null)
.type
- An instance of Object
representing the
type of memory required, e.g., dma, shared,
used to define the base address and control the
mapping. When the required memory has more than one
attribute, type
may be an array of
objects. When type
is null
or a
reference to an array with no entries, any type of memory
is acceptable. Note that type
values are
compared by reference (==), not by value
(equals
).base
- The physical memory address of the area.size
- The size of the area in bytes.StaticSecurityException
- when the application doesn't have
permissions to access physical memory or the given type of
memory.SizeOutOfBoundsException
- when the size is less than zero, or the
implementation detects that base
plus
size
extends beyond physically addressable memory.OffsetOutOfBoundsException
- when the address is invalid.UnsupportedPhysicalMemoryException
- when the underlying
hardware does not support the given type, or when no matching
PhysicalMemoryTypeFilter
has been registered with
the PhysicalMemoryManager
.MemoryTypeConflictException
- when the specified base does not point to
memory that matches the requested type, or when
type
specifies
incompatible memory attributes.java.lang.IllegalArgumentException
- when size
is less than zero.MemoryInUseException
- when the specified memory is already in use.PhysicalMemoryManager
public LTPhysicalMemory(java.lang.Object type, long base, SizeEstimator size)
LTPhysicalMemory(Object, long, long, Runnable)
with
the argument list (type, base, size.getEstimate(), null)
.type
- An instance of Object
representing the
type of memory required, e.g., dma, shared,
used to define the base address and control the
mapping. When the required memory has more than one
attribute, type
may be an array of
objects. When type
is null
or a
reference to an array with no entries, any type of memory
is acceptable. Note that type
values are
compared by reference (==), not by value
(equals
).base
- The physical memory address of the area.size
- A size estimator for this memory area.StaticSecurityException
- when the application doesn't have
permissions to access physical memory or the given type of
memory.SizeOutOfBoundsException
- when the
implementation detects that base
plus
the size estimate extends beyond physically addressable memory.OffsetOutOfBoundsException
- when the address is invalid.UnsupportedPhysicalMemoryException
- when the underlying
hardware does not support the given type, or when no matching
PhysicalMemoryTypeFilter
has been registered with
the PhysicalMemoryManager
.MemoryTypeConflictException
- when the specified base does not point to
memory that matches the requested type, or when
type
specifies
incompatible memory attributes.MemoryInUseException
- when the specified memory is already in use.java.lang.IllegalArgumentException
- when size
is null
,
or size.getEstimate()
is negative.PhysicalMemoryManager
public LTPhysicalMemory(java.lang.Object type, long size, java.lang.Runnable logic)
LTPhysicalMemory(Object, long, long, Runnable)
with the argument list (type, next, size, logic)
, where
next
is the beginning of the next best fit in the physical
memory range.type
- An instance of Object
representing the
type of memory required, e.g., dma, shared,
used to define the base address and control the
mapping. When the required memory has more than one
attribute, type
may be an array of
objects. When type
is null
or a
reference to an array with no entries, any type of memory
is acceptable. Note that type
values are
compared by reference (==), not by value
(equals
).size
- The size of the area in bytes.logic
- The run()
method of this object will be
called whenever MemoryArea.enter()
is called. When
logic
is null
,
logic
must be supplied when the memory area
is entered.StaticSecurityException
- when the application doesn't have
permissions to access physical memory or the given type of
memory.java.lang.IllegalArgumentException
- when size
is less than zero.SizeOutOfBoundsException
- when the
implementation detects that size
extends beyond
physically addressable memory.UnsupportedPhysicalMemoryException
- when the underlying
hardware does not support the given type, or when no matching
PhysicalMemoryTypeFilter
has been registered with
the PhysicalMemoryManager
.MemoryTypeConflictException
- when the specified base does not point to
memory that matches the requested type, or when
type
specifies
incompatible memory attributes.IllegalAssignmentError
- when storing logic
in this
would
violate the assignment rules.PhysicalMemoryManager
public LTPhysicalMemory(java.lang.Object type, SizeEstimator size, java.lang.Runnable logic)
LTPhysicalMemory(Object, long, long, Runnable)
with the argument list (type, next, size.getEstimate(), logic)
,
where next
is the beginning of the next best fit in the physical
memory range.type
- An instance of Object
representing the
type of memory required, e.g., dma, shared,
used to define the base address and control the
mapping. When the required memory has more than one
attribute, type
may be an array of
objects. When type
is null
or a
reference to an array with no entries, any type of memory
is acceptable. Note that type
values are
compared by reference (==), not by value
(equals
).size
- A size estimator for this area.logic
- The run()
method of this object will be
called whenever MemoryArea.enter()
is called. When
logic
is null
,
logic
must be supplied when the memory area
is entered.StaticSecurityException
- when the application doesn't have
permissions to access physical memory or the given type of
memory.SizeOutOfBoundsException
- when the
implementation detects that base
plus
the size estimate extends beyond physically addressable memory.UnsupportedPhysicalMemoryException
- when the underlying
hardware does not support the given type, or when no matching
PhysicalMemoryTypeFilter
has been registered with
the PhysicalMemoryManager
.MemoryTypeConflictException
- when the specified base does not point to
memory that matches the request type, or when type
specifies attributes with a conflict.java.lang.IllegalArgumentException
- when size
is null
,
or size.getEstimate()
is negative.IllegalAssignmentError
- when storing logic
in
this
violates the assignment rules.PhysicalMemoryManager
public LTPhysicalMemory(java.lang.Object type, long size)
LTPhysicalMemory(Object, long, long, Runnable)
with
the argument list (type, next, size, null)
, where
next
is the beginning of the next best fit in the physical
memory range.type
- An instance of Object
representing the
type of memory required, e.g., dma, shared,
used to define the base address and control the
mapping. When the required memory has more than one
attribute, type
may be an array of
objects. When type
is null
or a
reference to an array with no entries, any type of memory
is acceptable. Note that type
values are
compared by reference (==), not by value
(equals
).size
- The size of the area in bytes.StaticSecurityException
- when the application doesn't have
permissions to access physical memory or the given type of
memory.java.lang.IllegalArgumentException
- when size
is less than zero.SizeOutOfBoundsException
- when
the implementation detects size
extends
beyond physically addressable memory.UnsupportedPhysicalMemoryException
- when the underlying
hardware does not support the given type, or when no matching
PhysicalMemoryTypeFilter
has been registered with
the PhysicalMemoryManager
.MemoryTypeConflictException
- when type
specifies
incompatible memory attributes.PhysicalMemoryManager
public LTPhysicalMemory(java.lang.Object type, SizeEstimator size)
LTPhysicalMemory(Object, long, long, Runnable)
with
the argument list (type, next, size.getEstimate(), null)
, where
next
is the beginning of the next best fit in the physical
memory range.type
- An instance of Object
representing the
type of memory required, e.g., dma, shared,
used to define the base address and control the
mapping. When the required memory has more than one
attribute, type
may be an array of
objects. When type
is null
or a
reference to an array with no entries, any type of memory
is acceptable. Note that type
values are
compared by reference (==), not by value
(equals
).size
- A size estimator for this area.StaticSecurityException
- when the application doesn't have
permissions to access physical memory or the given type of
memory.SizeOutOfBoundsException
- when the implementation
detects that size
extends beyond physically
addressable memory.UnsupportedPhysicalMemoryException
- when the underlying
hardware does not support the given type, or when no matching
PhysicalMemoryTypeFilter
has been registered with
the PhysicalMemoryManager
.MemoryTypeConflictException
- when type
specifies
incompatible memory attributes.java.lang.IllegalArgumentException
- when size
is null
,
or size.getEstimate()
is negative.PhysicalMemoryManager
public java.lang.String toString()
(LTPhysicalMemory) Scoped memory # num
where num
is a number that uniquely
identifies this LTPhysicalMemory
memory area
representing the value of this
.toString
in class ScopedMemory
this
.