This chapter describes Java enhancements for developers.
The 8/99 update release included the JDK 1.1.7_07 release.
For the most up-to-date man pages, use the man command. The Solaris 7 11/99 man pages include new feature information not found in the Solaris 7 Reference Manual Collection.
These enhancements are new in the Solaris 7 11/99 software release. For more information, see Java 2 SDK Developer's Guide for Solaris.
This diagnostic tool for interactively killed programs is accessible from the SIGQUIT handler menu. It can be used to find memory leaks in your programs. A memory leak occurs when a program inadvertently retains objects, preventing the garbage collector from reclaiming the memory. Heap inspection presents a per-class breakdown of the objects in the heap, sorted by total amount of memory consumed. You can then examine reference chains to selected objects to see what is keeping them alive.
Double-word (longs and doubles) values are now aligned to 8-byte boundaries in the heap. This improves the performance of both native code and JIT-compiled Java code while ensuring correctness of volatile double-word values on SPARC systems. However, if your application allocates and retains many small objects, you may need to increase your heap size(s) slightly, since these objects will be allocated in multiples of 8 bytes, increasing your memory usage.
The Java 2 SDK includes an optimizing JIT compiler which improves performance without sacrificing application start-up time. Specifically, the JIT compiler has improved in its ability to identify optimization opportunities, translating frequently invoked methods and methods with loops into highly efficient native code.
The Java Virtual Memory (JVM) also includes a highly optimized memory system, making memory allocation and garbage collection more efficient. It is a non-conservative, fully compacting, generational memory system which uses direct pointers. This feature increases batch program performance and reduces disruptive garbage collection pauses in interactive programs.
The JVM has significantly improved implementations of the Java platform's synchronization primitives. These implementations make concurrent programs more efficient and decrease the impact of the synchronization primitives on single-threaded application performance.
This feature is new in the Solaris 7 11/99 software release.
The JDK 1.1.7_07 release supports the new European Union currency, the euro, including these changes:
Unicode support is upgraded from version 2.0.14 to version 2.1.2.
Character encodings have changed and new encodings have been added.
New locales have been added.
In order for the JDK software support for the euro character to function properly, you may need to install euro-support patches for your operating system. Euro-support patches are required if you are using versions of Solaris software prior to the Solaris 7 operating environment. Check with your Solaris support provider or visit the SunSolveSM website at http://sunsolve.sun.com for information on the availability of the Solaris euro-support patches.
The addition of euro support will not affect existing code, except for character conversion code relying on changed encodings. No APIs have been changed.
For information on the euro, see the euro web site at http://europa.eu.int/euro/.
A JRE corresponding to the latest version of the JDK is available for download at http://www.sun.com/solaris/jre.
Refer to the document, Solaris Java Runtime Environment (JRE) Configuration Guide at http://www.sun.com/solaris/jre/download.1.1.7/en/jre_config.txt.
This document contains the following information:
JRE overview
How to bundle and run the JRE
The bugs in these release notes apply to the JRE, except for those bugs that apply to components not included in the JRE.
JDK 1.1.6_03 introduced the High-Performance JIT compiler, an optimized version that enables significant performance gains over the JIT compiler bundled with the Solaris 2.6 environment.