NAME | SYNOPSIS | FEATURES | DESCRIPTION | ATTRIBUTES | SEE ALSO
JVM
startjvm is a target utility.
The startjvm command starts the Java Virtual Machine for ChorusOS (the jvmd
actor) initializing it according to the environment variables described in the ENVIRONMENT VARIABLES section of
java(1CC).
The jvmd
actor is started only once, as all java applications executed on the target system run in the context of that actor.
Note that the startjvm command is not located under JVM_ROOT.
After the jvmd
actor has been started using the startjvm command
Main JVM created |
should appear on the ChorusOS console.
The corresponding command to terminate the jvmd
actor is:
example% rsh target $JVM_ROOT/bin/java -quit |
The jvmd
actor runs on the target system.
The jvmd
actor provides the Java Virtual Machine for ChorusOS.
It may be terminated using the -quit option of the
java command,
but does not terminate simply because no Java applications are running.
The Java Virtual Machine component of ChorusOS is implemented as a single supervisor actor. That single actor holds all Java threads associated with all Java applications running on the target. In other words, all Java applications run in the supervisor space and all Java applications and associated threads belong to a single ChorusOS actor.
The following table indicates what is and is not supported.
SUPPORTED | NOT SUPPORTED |
---|---|
All JavaTM 2 Platform, Standard Edition, v1.2.2 application programming interfaces except AWT, including the following packages: java.beans, java.io, java.lang, java.math, java.net, java.rmi, java.security, java.sql, java.text, java.util, sun.beans, sun.dc, sun.io, sun.jdbc, sun.misc, sun.net, sun.rmi, sun.security, sun.tools, sunw.io, sunw.util | AWT and packages that depend on AWT |
The JavaTM Native Interface with native code running in supervisor space | The Java Native Interface with native code running in user space only |
Loading of dynamic libraries whose symbols are known to the Java Virtual Machine actor |
The following particularities, limitations and restrictions apply:
The Java Virtual Machine runs as a single actor.
All Java applications running on the target depend on this single actor, jvmd
. All Java applications must be started after the jvmd
actor has been launched, using the
java(1CC)
command.
System.exit() takes no action, and simply returns control to the caller.
Java Virtual Machine implementations for other host platforms allow the developer to use System.exit() to terminate the Java Virtual Machine currently running. As the Java Virtual Machine actor for the ChorusOS operating system runs multiple Java applications, System.exit() is not designed to terminate the Java Virtual Machine itself.
Developers writing applications that use the Java Native Interface must use system calls that are available for use by supervisor actors.
The Java Virtual Machine is implemented as a supervisor actor. Some symbols that can be seen in a user space view of the system are not visible in supervisor space.
All messages from the Java Virtual Machine are directed to the ChorusOS console.
Developers who need to manage messages in some other way must implement their own mechanisms for doing so, for example, by using inter-process communication or log files written to a file system.
By default, threads running in the Java Virtual Machine share the same priority scale than other system threads.
Before mapping Java thread priorities to the system priorities, developers may first tune the ChorusOS system to set the maximum priority for Java threads using the jvm.thread.maxPriority
tunable. This value forces threads running in the Java Virtual Machine to be assigned a lower overall priority than other system threads.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
java(1CC), JVM(5FEA)
NAME | SYNOPSIS | FEATURES | DESCRIPTION | ATTRIBUTES | SEE ALSO