javax.realtime
Class ImmortalPhysicalMemory

java.lang.Object
  |
  +--javax.realtime.MemoryArea
        |
        +--javax.realtime.ImmortalPhysicalMemory

public class ImmortalPhysicalMemory
extends MemoryArea

An instance of ImmortalPhysicalMemory 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 restrictive set of assignment rules as ImmortalMemory memory areas, and may be used in any context where ImmortalMemory is appropriate. Objects allocated in immortal physical memory have a lifetime greater than the application as do objects allocated in immortal memory.


Constructor Summary
ImmortalPhysicalMemory(java.lang.Object type, long size)
           
ImmortalPhysicalMemory(java.lang.Object type, long base, long size)
           
ImmortalPhysicalMemory(java.lang.Object type, long base, long size, java.lang.Runnable logic)
           
ImmortalPhysicalMemory(java.lang.Object type, long size, java.lang.Runnable logic)
           
ImmortalPhysicalMemory(java.lang.Object type, long base, SizeEstimator size)
           
ImmortalPhysicalMemory(java.lang.Object type, long base, SizeEstimator size, java.lang.Runnable logic)
           
ImmortalPhysicalMemory(java.lang.Object type, SizeEstimator size)
           
ImmortalPhysicalMemory(java.lang.Object type, SizeEstimator size, java.lang.Runnable logic)
           
 
Methods inherited from class javax.realtime.MemoryArea
enter, enter, executeInArea, getMemoryArea, memoryConsumed, memoryRemaining, newArray, newInstance, newInstance, size
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ImmortalPhysicalMemory

public ImmortalPhysicalMemory(java.lang.Object type,
                              long size)
                       throws java.lang.SecurityException,
                              SizeOutOfBoundsException,
                              UnsupportedPhysicalMemoryException,
                              MemoryTypeConflictException
Parameters:
type - An Object representing the type of memory required (e.g., dma, shared) - used to define the base address and control the mapping.
size - The size of the area in bytes.
Throws:
java.lang.SecurityException - The application doesn't have permissions to access physical memory or the given type of memory.
SizeOutOfBoundsException - The size is negative or extends into an invalid range of memory.
UnsupportedPhysicalMemoryException - Thrown if the underlying hardware does not support the given type.

ImmortalPhysicalMemory

public ImmortalPhysicalMemory(java.lang.Object type,
                              long base,
                              long size)
                       throws java.lang.SecurityException,
                              SizeOutOfBoundsException,
                              OffsetOutOfBoundsException,
                              UnsupportedPhysicalMemoryException,
                              MemoryTypeConflictException,
                              MemoryInUseException
Parameters:
type - An Object representing the type of memory required (e.g., dma, shared)
base - The physical memory address of the area.
size - The size of the area in bytes.
Throws:
java.lang.SecurityException - The application doesn't have permissions to access physical memory or the given range of memory.
OffsetOutOfBoundsException - The address is invalid.
SizeOutOfBoundsException - The size is negative or extends into an invalid range of memory.
UnsupportedPhysicalMemoryException - Thrown if the underlying hardware does not support the given type.
MemoryTypeConflictException - The specified base does not point to memory that matches the request type, or if type specifies attributes with a conflict.
MemoryInUseException - The specified memory is already in use.

ImmortalPhysicalMemory

public ImmortalPhysicalMemory(java.lang.Object type,
                              SizeEstimator size)
                       throws java.lang.SecurityException,
                              SizeOutOfBoundsException,
                              UnsupportedPhysicalMemoryException,
                              MemoryTypeConflictException
Parameters:
type - An Object representing the type of memory required (e.g., dma, shared) - used to define the base address and control the mapping.
size - A size estimator for this area.
Throws:
java.lang.SecurityException - The application doesn't have permissions to access physical memory or the given type of memory.
SizeOutOfBoundsException - The size is negative or extends into an invalid range of memory.
UnsupportedPhysicalMemoryException - Thrown if the underlying hardware does not support the given type.
MemoryTypeConflictException - The specified base does not point to memory that matches the request type, or if type specifies attributes with a conflict.

ImmortalPhysicalMemory

public ImmortalPhysicalMemory(java.lang.Object type,
                              long base,
                              SizeEstimator size)
                       throws java.lang.SecurityException,
                              SizeOutOfBoundsException,
                              OffsetOutOfBoundsException,
                              UnsupportedPhysicalMemoryException,
                              MemoryTypeConflictException,
                              MemoryInUseException
Parameters:
type - An Object representing the type of memory required (e.g., dma, shared)
base - The physical memory address of the area.
size - A size estimator for this memory area.
Throws:
java.lang.SecurityException - The application doesn't have permissions to access physical memory or the given range of memory.
OffsetOutOfBoundsException - The address is invalid.
SizeOutOfBoundsException - The size is negative or extends into an invalid range of memory.
UnsupportedPhysicalMemoryException - Thrown if the underlying hardware does not support the given type.
MemoryTypeConflictException - The specified base does not point to memory that matches the request type, or if type specifies attributes with a conflict.
MemoryInUseException - The specified memory is already in use.

ImmortalPhysicalMemory

public ImmortalPhysicalMemory(java.lang.Object type,
                              long size,
                              java.lang.Runnable logic)
                       throws java.lang.SecurityException,
                              SizeOutOfBoundsException,
                              UnsupportedPhysicalMemoryException,
                              MemoryTypeConflictException
Parameters:
type - An Object representing the type of memory required (e.g., dma, shared) - used to define the base address and control the mapping.
size - The size of the area in bytes.
logic - The run() method of this object will be called whenever MemoryArea.enter() is called.
Throws:
java.lang.SecurityException - The application doesn't have permissions to access physical memory or the given type of memory.
SizeOutOfBoundsException - The size is negative or extends into an invalid range of memory.
UnsupportedPhysicalMemoryException - Thrown if the underlying hardware does not support the given type.
MemoryTypeConflictException - The specified base does not point to memory that matches the request type, or if type specifies attributes with a conflict.

ImmortalPhysicalMemory

public ImmortalPhysicalMemory(java.lang.Object type,
                              long base,
                              long size,
                              java.lang.Runnable logic)
                       throws java.lang.SecurityException,
                              SizeOutOfBoundsException,
                              OffsetOutOfBoundsException,
                              UnsupportedPhysicalMemoryException,
                              MemoryTypeConflictException,
                              MemoryInUseException
Parameters:
type - An Object representing the type of memory required (e.g., dma, shared)
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.
Throws:
java.lang.SecurityException - The application doesn't have permissions to access physical memory or the given range of memory.
OffsetOutOfBoundsException - The address is invalid.
SizeOutOfBoundsException - The size is negative or extends into an invalid range of memory.
UnsupportedPhysicalMemoryException - Thrown if the underlying hardware does not support the given type.
MemoryTypeConflictException - The specified base does not point to memory that matches the request type, or if type specifies attributes with a conflict.
MemoryInUseException - The specified memory is already in use.

ImmortalPhysicalMemory

public ImmortalPhysicalMemory(java.lang.Object type,
                              SizeEstimator size,
                              java.lang.Runnable logic)
                       throws java.lang.SecurityException,
                              SizeOutOfBoundsException,
                              UnsupportedPhysicalMemoryException,
                              MemoryTypeConflictException
Parameters:
type - An Object representing the type of memory required (e.g., dma, shared) - used to define the base address and control the mapping.
size - A size estimator for this area.
logic - The run() method of this object will be called whenever MemoryArea.enter() is called.
Throws:
java.lang.SecurityException - The application doesn't have permissions to access physical memory or the given type of memory.
SizeOutOfBoundsException - The size extends into an invalid range of memory.
UnsupportedPhysicalMemoryException - Thrown if the underlying hardware does not support the given type.
MemoryTypeConflictException - The specified base does not point to memory that matches the request type, or if type specifies attributes with a conflict.

ImmortalPhysicalMemory

public ImmortalPhysicalMemory(java.lang.Object type,
                              long base,
                              SizeEstimator size,
                              java.lang.Runnable logic)
                       throws java.lang.SecurityException,
                              SizeOutOfBoundsException,
                              OffsetOutOfBoundsException,
                              UnsupportedPhysicalMemoryException,
                              MemoryTypeConflictException,
                              MemoryInUseException
Parameters:
type - An Object representing the type of memory required (e.g., dma, shared)
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.
Throws:
java.lang.SecurityException - The application doesn't have permissions to access physical memory or the given range of memory.
OffsetOutOfBoundsException - The address is invalid.
SizeOutOfBoundsException - The size extends into an invalid range of memory.
UnsupportedPhysicalMemoryException - Thrown if the underlying hardware does not support the given type.
MemoryTypeConflictException - The specified base does not point to memory that matches the request type, or if type specifies attributes with a conflict.
MemoryInUseException - The specified memory is already in use.