javax.realtime
Class RealtimeSystem

java.lang.Object
  |
  +--javax.realtime.RealtimeSystem

public class RealtimeSystem
extends java.lang.Object

RealtimeSystem provides a means for tuning the behavior of the implementation by specifying parameters such as the maximum number of locks that can be in use concurrently, and the monitor control policy. In addition, RealtimeSystem provides a mechanism for obtaining access to the security manager, garbage collector and scheduler, to make queries from them or to set parameters.


Field Summary
static byte BIG_ENDIAN
          Value to set the byte ordering for the underlying hardware.
static byte BYTE_ORDER
          The byte ordering of the underlying hardware.
private static int concurrentLocksUsed
           
private static javax.realtime.GarbageCollector garbageCollector
           
static byte LITTLE_ENDIAN
          Value to set the byte ordering for the underlying hardware.
private static int maxConcurrentLocks
           
private static boolean maxHard
           
private static javax.realtime.RealtimeSecurity securityManager
           
 
Constructor Summary
RealtimeSystem()
           
 
Method Summary
static javax.realtime.GarbageCollector currentGC()
          Return a reference to the currently active garbage collector for the heap.
static int getConcurrentLocksUsed()
          Gets the maximum number of locks that have been used concurrently.
(package private) static javax.realtime.GarbageCollector getCurrentGC()
          Native call to retrieve the current GarbageCollector.
static int getMaximumConcurrentLocks()
          Gets the maximum number of locks that can be used concurrently without incurring an execution time increase as set by the setMaximumConcurrentLocks() methods.
static javax.realtime.RealtimeSecurity getSecurityManager()
          Gets a reference to the security manager used to control access to real-time system features such as access to physical memory.
static void setMaximumConcurrentLocks(int number)
          Sets the anticipated maximum number of locks that may be held or waited on concurrently.
static void setMaximumConcurrentLocks(int number, boolean hard)
          Sets the anticipated maximum number of locks that may be held or waited on concurrently.
static void setSecurityManager(javax.realtime.RealtimeSecurity manager)
          Set a new real-time security manager.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

BIG_ENDIAN

public static final byte BIG_ENDIAN
Value to set the byte ordering for the underlying hardware.

See Also:
Constant Field Values

LITTLE_ENDIAN

public static final byte LITTLE_ENDIAN
Value to set the byte ordering for the underlying hardware.

See Also:
Constant Field Values

BYTE_ORDER

public static final byte BYTE_ORDER
The byte ordering of the underlying hardware.

See Also:
Constant Field Values

garbageCollector

private static javax.realtime.GarbageCollector garbageCollector

securityManager

private static javax.realtime.RealtimeSecurity securityManager

maxConcurrentLocks

private static int maxConcurrentLocks

concurrentLocksUsed

private static int concurrentLocksUsed

maxHard

private static boolean maxHard
Constructor Detail

RealtimeSystem

public RealtimeSystem()
Method Detail

getCurrentGC

static javax.realtime.GarbageCollector getCurrentGC()
Native call to retrieve the current GarbageCollector.


currentGC

public static javax.realtime.GarbageCollector currentGC()
Return a reference to the currently active garbage collector for the heap.

Returns:
A GarbageCollector object which is the current collector collecting objects on the traditional Java heap.

getConcurrentLocksUsed

public static int getConcurrentLocksUsed()
Gets the maximum number of locks that have been used concurrently. This value can be used for tuning the concurent locks parameter which is used as a hint by systems that use a monitor cache.

Returns:
An intenger whose value is the number of locks in use at the time of the invocation of the method.

getMaximumConcurrentLocks

public static int getMaximumConcurrentLocks()
Gets the maximum number of locks that can be used concurrently without incurring an execution time increase as set by the setMaximumConcurrentLocks() methods.

Returns:
An integer whose value is the maximum number of locks that can be in simultaneous use.

getSecurityManager

public static javax.realtime.RealtimeSecurity getSecurityManager()
Gets a reference to the security manager used to control access to real-time system features such as access to physical memory.

Returns:
A RealtimeSecurity object representing the default realtime security manager.

setMaximumConcurrentLocks

public static void setMaximumConcurrentLocks(int number)
Sets the anticipated maximum number of locks that may be held or waited on concurrently. Provide a hint to systems that use a monitor cache as to how much space to dedicate to the cache.

Parameters:
number - An integer whose value becomes the number of locks that can be in simultaneous use without incurring an execution time increase. If number is less than or equal to zero nothing happens.

setMaximumConcurrentLocks

public static void setMaximumConcurrentLocks(int number,
                                             boolean hard)
Sets the anticipated maximum number of locks that may be held or waited on concurrently. Provide a limit for the size of the monitor cache on systems that provide one if hard is true.

Parameters:
number - The maximum number of locks that can be in simultaneous use without incurring an execution time increase. If number is less than or equal to zero nothing happens.
hard - If true, number sets the limit. If a lock is attempted which would cause the number of locks to exceed number then a ResourceLimitError is thrown.

setSecurityManager

public static void setSecurityManager(javax.realtime.RealtimeSecurity manager)
                               throws java.lang.SecurityException
Set a new real-time security manager.

Parameters:
manager - A RealtimeSecurity object which will become the new security manager.
Throws:
java.lang.SecurityException - Thrown if security manager has already been set.