NonStop Server for Java Programmer's Reference Abstract This document describes the HP NonStop™ Server for Java™, based on Java 2 Platform, Standard Edition, SDK 1.4.2, a Java environment that supports compact, concurrent, dynamic, and portable programs for the enterprise server. The NonStop Server for Java uses the HP NonStop Kernel operating system to add scalability and program persistence to the Java environment.
426947-005 NonStop Server for Java 3.1 Update 1 December 2002 526238-001 HP NonStop Server for Java, based on Java 2 Platform, Standard Edition, SDK 1.4.1, Version 1.0 October 2003 526238-002 HP NonStop Server for Java, based on Java 2 Platform, Standard Edition, SDK 1.4.2, Version 2.0 December 2004 Ordering Information For manual ordering information: domestic U.S. customers, call 1-800-243-6886; international customers, contact your local sales representative.
© 1990, 1991, 1992, 1993 Open Software Foundation, Inc. The OSF documentation and the OSF software to which it relates are derived in part from materials supplied by the following: © 1987, 1988, 1989 Carnegie-Mellon University. © 1989, 1990, 1991 Digital Equipment Corporation. © 1985, 1988, 1989, 1990 Encore Computer Corporation. © 1988 Free Software Foundation, Inc. © 1987, 1988, 1989, 1990, 1991 Hewlett-Packard Company.
THE INFORMATION IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND AND IS SUBJECT TO CHANGE WITHOUT NOTICE. THE PRODUCT WARRANTIES ARE SET FORTH IN THE EXPRESS LIMITED WARRANTY STATEMENTS ACCOMPANYING SUCH PRODUCTS. NOTHING HEREIN SHOULD BE CONSTRUED AS CONSTITUTING AN ADDITIONAL WARRANTY. NonStop Server for Java Programmer's Reference (526238-002) © 2004 Hewlett-Packard Development Company L.P. All rights reserved.
NonStop Server for Java Programmer's Reference ● About This Document ❍ ● New and Changed Information ■ Feature Changes ■ Documentation Changes ❍ Is This Document for You? ❍ Document Structure ❍ Printing This Document ❍ Related Reading ■ NonStop System Computing Documents ■ Sun Microsystems Documents ❍ Notation Conventions ❍ Abbreviations Introduction to NonStop Server for Java 4 ❍ Java HotSpot Server Virtual Machine ❍ Java Software Development Kit (SDK) Highlights ❍ Java Naming an
● ■ NonStop CORBA ■ NonStop Servlets for Java ServerPages ■ NonStop Server for Java Message Service (JMS) ■ NonStop Tuxedo: Jolt Client ■ SQLJ ■ Stored Procedures in Java Learning About the Prerequisites ■ Learning About Java ■ Learning About Open System Services ❍ Verifying the Java Installation ❍ Tutorial: Running a Simple Program, HelloWorld ❍ Specifying the CPU and Process Name with Which an Application Runs ❍ Configuring a Java Pathway Serverclass Installation and Configuration
❍ Additional Environment Variables ❍ Java Native Interface (JNI) ❍ ❍ ■ Calling C or C++ Methods from Java ■ Calling Java Methods from C or C++ ■ Using the compaq.
● ● ❍ JVM Tuning Tools ❍ Tuning Application Performance Memory Considerations: Moving QIO to KSEG2 ■ Determining the Heap Manager ■ Determining the Heap Setting ■ Related Tuning Guides Transactions ❍ Controlling Maximum Concurrent Transactions ❍ Current Class Methods ❍ Java Transaction API (JTA) ■ javax.transaction Interfaces ■ javax.
❍ Using AWT Classes ❍ POSIX Threads ❍ Directories of Binary Files Moved ❍ Compling C++ Native Code with the -Wversion3 Option ❍ JAAS Enhancement ● Glossary ● List of Examples ● List of Figures ● List of Tables ● Index NonStop Server for Java Programmer's Reference (526238-002) © 2004 Hewlett-Packard Development Company L.P. All rights reserved.
Contents | Index | Glossary | Prev | Next About This Document This section explains these subjects: ● New and Changed Information ● Is This Document for You? ● Document Structure ● Printing This Document ● Related Reading ● Notation Conventions ● Abbreviations New and Changed Information This edition of the NonStop Server for Java Programmer's Reference describes how it differs from the previous edition (part number 526238-001) for NonStop Server for Java release version update (RVU) 4.0.
(http://java.sun.com/j2se/1.4.2/changes.html) Other technical changes to the product for this version include: ● Renamed the recommended public library directory from /usr/tandem/java_public_lib to /usr/tandem/java_public_lib_jdk142. For information about using the public library directory, see Using the Makefile to Link in Native Libraries. ● Replaced the -Wversion2 option with the -Wversion3 option to compile user native code written in C++ that is to be linked into the java executable.
■ ❍ Configuring a Java Pathway Serverclass Multithreaded Programming ■ Thread Scheduling ■ Threading Considerations for Java Code ■ Threading Considerations for Native Code ❍ Java Authentication and Authorization Service (JAAS) ❍ Java GC Tuning ❍ JVM Tuning Tools ❍ Tuning Application Performance ■ Memory Considerations: Moving QIO to KSEG2 ■ Determining the Heap Manager ■ Determining the Heap Setting ■ Related Tuning Guides ● Updated the Migration section so it now includes migration
For Java programmers who want to determine application performance, this manual describes how to use the HPROF profiler agent to obtain run-time information for a NonStop Server for Java 4 program. For developers new to NonStop systems, this document: ● Explains NonStop system fundamentals as they apply to the NonStop Server for Java 4 product ● Explains differences between the NonStop Server for Java 4 and the Java 2 Platform, Standard Edition SDK 1.4.
Implementation Specifics Explains issues and features that are unique to the NonStop Server for Java 4 implementation, such as JNI, IEEE floating-point implementation, Java Print Service, multithreading programming, JavaBeans, remote debugging, garbage collectors, and so forth. Transactions Explains how the NonStop Server for Java 4 lets you work with transactions.
Related Reading For background information about the features described in this guide, see the following documents: ● NonStop Server for Java Documents ● NonStop System Computing Documents ● Sun Microsystems Documents Note: For Web-based, Java oriented documentation and late-breaking information, see the NonStop Server for Java documentation Web site.
■ ■ ■ ■ ❍ operations on Enscribe files. Pathsend API for Java, which provides support for creating Pathway clients by using the Pathsend interface. Pathway API for Java, which provides for creating Pathway servers by using $RECEIVE. Scalable TCP/IP (SIP), where SIP provides a transparent method of giving scalability and persistence to a network server written in Java. ddl2java Tool, which generates Java code based on Data Definition Language (DDL) Dictionary definitions.
● ODBC (Open Database Connectivity) Documents The following documents describe products that allow programs written for the Microsoft® Open Database Connectivity (ODBC) product to access NonStop SQL/MX and NonStop SQL/MP.
❍ SQL/MP Glossary ❍ Explains the terminology used in the SQL/MP documentation. SQL/MP Reference Manual ❍ Explains the SQL/MP language elements, expressions, functions, and statements. SQL/MP Installation and Management Guide ❍ Explains how to plan, install, create, and manage a NonStop SQL/MP database; describes the syntax of installation and management commands; and describes NonStop SQL/MP catalogs and file structures.
❍ SQL/MX. SQL/MX Quick Start ❍ Describes basic techniques for using SQL in the SQL/MX conversational interface (MXCI). Also includes information about installing the sample database. SQL/MX Comparison Guide for SQL/MP Users ❍ Compares SQL/MP and SQL/MX. SQL/MX Installation and Management Guide ❍ Describes how to install and manage SQL/MX on a NonStop server. SQL/MX Glossary ❍ Explains the terminology used in SQL/MX documentation.
● ● (API) to function correctly, TCP/IP and its component, Domain Name Server (DNS), must be installed and configured correctly. TCP/IPv6 Configuration and Management Manual Describes how to configure and manage the NonStop TCP/IPv6 subsystem on a NonStop S-series server. For IPv6 support, you must use the NonStop TCP/IPv6 subsystem with NonStop Server for Java.
http://search.java.sun.com/search/java/advanced.jsp), or contact Sun Microsystems regarding site feedback (http://servlet.java.sun.com/feedback.jsp). ● ● ● ● ● ● JNDI document (http://java.sun.com/products/jndi/) JDBC Data Access API (http://java.sun.com/products/jdbc/index.html) Java Printing Service (JPS) document (http://java.sun.com/j2se/1.4.2/docs/guide/jps/) Java Transaction API (JTA) document (http://java.sun.com/products/jta/index.html) Java Transaction Service (JTS) document (http://java.sun.
example: -c identity {true|false} | Vertical Line A vertical line separates alternatives in a list that is enclosed in brackets or braces. For example: where [threadID|all] ... Ellipsis An ellipsis immediately following a pair of brackets or braces indicates that you can repeat the enclosed sequence of syntax items any number of times. For example: print {objectID|objectName} ... An ellipsis immediately following a single syntax item indicates that you can repeat that syntax item any number of times.
Abbreviations ANSI. American National Standards Institute AWT. Abstract Window Toolkit API. application program interface ASCII. American Standard Code for Information Interchange BDK. JavaBeans Development Kit CD. compact disk CGI. Common Gateway Interface COBOL. Common Business-Oriented Language CORBA. Common Object Request Broker Architecture CPU. central processing unit DDL. Data Definition Language DNS. Domain Name Server DSA. digital signature algorithm GUI. graphical user interface HTML.
JDBC/MP. JDBC Driver for SQL/MP JDBC/MX. JDBC Driver for SQL/MX JNDI. Java Naming and Directory Interface JNI. Java Native Interface JPS. Java Print Service JRE. Java Run-time Environment JTA. Java Transaction API JTS. Java Transaction Service JVMPI. Java Virtual Machine Profiler Interface LAN. local area network NonStop TS/MP. NonStop Transaction Services/MP ODBC. Open Database Connectivity OLTP. Online Transaction Processing OMG. Object Management Group OSS. Open System Services OTS.
SQL/MP. Structured Query Language/MP SQL/MX. Structured Query Language/MX TACL. Tandem Advanced Command Language TCP/IP. Transmission Control Protocol/Internet Protocol TMF. Transaction Management Facility URL. uniform resource locator VM. virtual machine WWW. World Wide Web Contents | Index | Glossary | Prev | Next NonStop Server for Java Programmer's Reference (526238-002) © 2004 Hewlett-Packard Development Company L.P. All rights reserved.
Contents | Index | Glossary | Prev | Next Introduction to NonStop Server for Java 4 The HP NonStop Server for Java 4 is a Java environment that supports compact, concurrent, dynamic, portable programs for the enterprise server. The NonStop Server for Java 4 requires the HP NonStop Kernel Open System Services (OSS) environment. The NonStop Server for Java 4 uses the HP NonStop Kernel operating system to add the NonStop system fundamentals of scalability and program persistence to the Java environment.
● Java Naming and Directory Interface (JNDI) Highlights ● IPv6 Support ● Associated Java Based Products Java HotSpot Server Virtual Machine The NonStop Server for Java 4 implements the HotSpot server compiler and the run-time Java HotSpot virtual machine. The product number is T2766. With this number the product's informal name became the NonStop Server for Java 4. The HotSpot Server Java VM, provides a fast, reliable technology for the enterprise server environment.
Because of the nonvisual nature of NonStop servers, the NonStop Server for Java 4 supports the following packages according to Headless support. Package Description java.awt and AWT-related packages Contains all of the classes for creating user interfaces and for painting graphics and images. javax.accessibility Defines a contract between user interface components and technology that provides access to those components. javax.
IPv6 Support With the J2SDK-JRE 1.4 release, Sun Microsystems has included Internet Protocol version (IPv6) support in Java Networking. This support makes J2SE compliant with the following standards (RFCs): ● RFC2373: IPv6 Addressing Architecture ● RFC 2553: BasicSocket Interface Extensions for IPv6 ● RFC 2732: Format for Literal IPv6 Addresses in URLs Since the J2SDK does not support raw sockets, RFC 2292 (Advanced Sockets API for IPv6) is not supported in this release.
BEA WebLogic Server for the HP NonStop Server The BEA WebLogic Server is a standards-based Java 2, Enterprise Edition (J2EE) application server that provides a foundation for building applications and includes:
● ● ● ● ● ● ● ● ● ● ● ● Load balancing Fault tolerance Web services Network transparency Legacy integration Transaction management Security Multithreading Persistence Database connectivity Resource pooling Development, testing, and packaging facilities The BEA WebLogic Server uses the Java platform for portability to a large number of operating platforms supporting the Java platform. On properly configured NonStop servers, the WebLogic Server runs unchanged just like on other platforms.
Type 4 Driver in Java programs running on PCs, HP-UX systems, and other platforms for access to NonStop SQL/MX. For the latest list of supported platforms, see the current JDBC Type 4 softdoc, which can be found on-line by accessing Scout for NonStop Servers. To obtain detailed information on the standard JDBC API, you can download the JDBC API documentation provided by Sun Microsystems (http://java.sun.com/products/jdbc/download.html).
or Java. Scalable TCP/IP Scalable TCP/IP (SIP) for the NonStop Server for Java provides a transparent way to give the NonStop fundamentals of scalability and persistence to a network server (SIP server) written in Java. Existing servers written in Java and their clients can take advantage of SIP without being changed.
NSJSP requires the use of the iTP Secure WebServer, which is based on Tomcat. Tomcat implements the Java Servlet and JavaServer Pages specifications. For detailed information about NSJSP, see the NonStop Servlets for JavaServer Pages System Administrator's Guide in the NonStop Technical Library under Independent Products: Java. For information about the iTP Secure WebServer, see the iTP WebServer documentation in the NonStop Technical Library under Independent Products.
simplicity. Using Jolt, you can build, deploy and maintain robust, modular, and scalable electronic commerce systems that operate over the Internet. The Jolt product includes the JoltBeans toolkit, which provides a JavaBeans compliant interface to Jolt for NonStop Tuxedo. The JoltBeans toolkit contains beans that wrap the existing Jolt class library into reusable bean components, such as the JoltSessionBean or the JoltServiceBean.
For detailed information on using SPJs, see the SQL/MX Guide to Stored Procedures in Java in the NonStop Technical Library the NonStop Technical Library, under G06 RVU publications for SQL/MX. Contents | Index | Glossary | Prev | Next NonStop Server for Java Programmer's Reference (526238-002) © 2004 Hewlett-Packard Development Company L.P. All rights reserved.
Contents | Index | Glossary | Prev | Next Getting Started Although this manual assumes that you are familiar with using Java and HP NonStop Kernel Open System Services (OSS), this section provides background information for persons not familiar with these products. Additionally, this section shows how to perform common tasks that are characteristic to running Java applications on NonStop systems.
J2SE SDK 1.4 implementation. Also, books and tutorials about how to write graphical user interfaces are not useful because the NonStop Server for Java 4 is a headless implementation. Learning About Open System Services (OSS) OSS is the open computing interface to the HP NonStop Kernel operating systemthe operating system for NonStop servers. Java applications run in the OSS environment. The user interface in the OSS environment is called the OSS "shell.
Describes how to run the OSS shell using the osh command. Creating Files Describes how to create new files in the OSS environment using the vi text editor. Note that you can avoid using the vi text editor by creating the files in another environment and using the File Transfer Protocol (FTP), the ftp command, or another utility to put the files in the OSS file system. The HelloWorld sample, shown later in this section, uses this method.
2. Confirm that the path is set correctly by typing the whence command: $whence java /home/lee/jdk142/java/bin/java 3. Determine the version of the Java virtual machine (JVM) by typing the vproc command, which displays the product versions of the java binary file and any products bound into the java binary.
1. Create a java Source File. Perform either steps a, b, and c or step d only. a. Using your favorite editor, create a file that contains the following source code. b. Name the file HelloWorld.java. c. Place the file in the OSS file space by using FTP. /** * The HelloWorld application implements a java class that * displays "Hello World!" to the standard output. */ class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } } d.
type the following command at the OSS prompt set the JREHOME shell variable: $export JREHOME=/test_dir/java/jre 3. Set the PATH Environment Variable. Add the directory where the NonStop Server for Java 4 executable file is installed to your PATH environment variable.
6. Run the Program by Using the java Tool. a. At the OSS prompt, ensure that the position is in the directory where your HelloWorld.class file is stored. For information about changing position, see step 5b. b. To run the HelloWorld program (also called an application), type the following command at the OSS prompt: $java HelloWorld Note that you should not type java HelloWorld.class. All Java classes have the .class extension. Typing .class at the end causes an error message.
For more information about the run(1) utility, see the Open System Services Shell and Utilities Reference Manual. Configuring a Java Pathway Serverclass The following is a brief overview of the specific Java requirements for configuring a Java program to run as a Pathway serverclass. Complete information about the topic is available in the TS/MP System Management Manual. The serverclass attributes that have specific Java requirements follow.
a configuration file to be used with PATHCOM.) $gtacl -p pathcom \$foo PATHCOM ..... =set server ENV /home/lee/jdk142/java/jre PROGRAM Set the PROGRAM attribute to the java executable. The java executable is located by default in /usr/tandem/java/bin/. For example from the OSS prompt, start a PATHMON (process monitor) named $foo and set the PROGRAM attribute at the PATHCOM prompt: $gtacl -p pathcom \$foo PATHCOM .....
Contents | Index | Glossary | Prev | Next Installation and Configuration This section explains these subjects: ● Installation Requirements ● Configuration Requirements ● NonStop Server for Java Directory Structure For information about how to verify a NonStop Server for Java 4 installation, see Verifying a Java Installation. Installation Requirements Regarding hardware, NonStop Server for Java 4 can run on all HP NonStop S-series servers except S700 and S70000.
Creating Larger or Additional Swap Files HP recommends a total swap files size of 512 MB (1024 Extents, 255 MaxExtents) for each processor that runs the Java virtual machine (JVM). If you plan to run multiple large processes in the same processor, you might need to create additional swap files because processes running in the same processor share the same swap file. Your system administrator can use the NSKCOM tool to create additional swap files.
Syntax sdkTool -classpath classpath1:classpath2... -orexport CLASSPATH=classpath1:classpath2... sdkTool A command-line tool, such as java or javac. For the tools list, see the NonStop Server for Java Tools Reference. classpath1:classpath2 Class paths to the .jar, .zip, or .class files. Each class path should end with a filename or directory name depending on the particular setting. ❍ For a .jar or .zip file that contains .class files, the class path ends with the name of the .jar or .zip file. ❍ For .
$ java utility.myapp.Cool For further information about setting class path, see the documentation provided by Sun Microsystems (http://java.sun.com/j2se/1.4/docs/tooldocs/solaris/classpath.html). Note that when applying that documentation to the NonStop Server for Java 4, you should follow the instructions given for sh and ksh instead of those for csh and tcsh. Instructions for the setenv and unsetenv commands do not apply to the NonStop Server for Java 4.
the system. When you unpax a NonStop Server for Java 4 pax file, the symbolic link is created or reset to refer to the JDK directory that is being unpaxed, which means that the symbolic link refers to the version of NonStop Server for Java 4 that was last installed. You are not required to use the symbolic link. To make sure you are always using the 1.4.2 version of the JDK, even if a later version has been installed, you can put /usr/tandem/nssjava/jdk142_v20/bin on your PATH.
● Specifying Tasks Provided by the Makefile ● Variables in the Makefile ● Examples of Using make For additional information about this Makefile, see install_dir/java/install/README, which might have a last-minute update about the topic. Specifying Tasks Provided by the Makefile The Makefile defines several rules, where each rule performs a different task.
Relinks a new java file without any custom libraries or optional libraries. The new java executable file is not SQL compiled. This rule produces a java executable that matches what is released on the product CD. make javasqlcomp SQL compiles the java executable if the NonStop SQL/MP product is installed on the system. make clean Removes temporary files created during the make process. Temporary files are always removed at the start and the end of the make process.
❍ than one directory, you must enclose the list of space-separated directory names in quotes. You can include wildcard characters in the directory names. See Examples of Using make for an example of how to override Makefile variables on the command line. Verbose Turns on the verbose option of the NLD command. The verbose option needs to be on for warning messages to be displayed.
$ cd /usr/tandem/nssjava/jdk142_v20/install $ make TARGET_JAVA_DIR=/h/testdir CUSTLIB_DIRS=/h/testdir Example 2 shows how to accomplish the operations performed in Example 1, but runs make while in a user directory. $ cd /h/testdir $ make -f /usr/tandem/java/install/Makefile TARGET_JAVA_DIR=. \ CUSTLIB_DIRS=/h/testdir In this example, CUSTLIB_DIRS must contain an absolute directory name even though the current working directory is /h/testdir.
/usr/tandem/java/install/README_javachk. NonStop Server for Java 4 Directory Structure This subsection explains: ● Directory Contents ● Demonstration Programs Directory Contents The /usr/tandem/java directory contains release documents and subdirectories. The following table lists the subdirectories and describes their contents. Subdirectory Contents /bin Executable binary files /demo Additional subdirectories, each containing a README file and a complete example.
Demonstration Program Illustrates invocation_api How to properly build an executable that can create its own Java virtual machine (JVM) javahjni How to create a native library and statically link it with a java executable and how to convert IEEE floating point to TNS floating point Many of the demonstration programs require you to edit some files before the demonstration programs can be run, as described in the accompanying README file.
Contents | Index | Glossary | Prev | Next Implementation Specifics This section explains these subjects regarding HP implementations of NonStop Server for Java, based on Java 2 Platform, Standard Edition, SDK 1.4.
Additional Files In addition to the standard Java packages, the NonStop Server for Java 4 provides these files: jtatmf.jar File containing classes for the version of the NonStop Java Transaction Agent that uses TMF javachk The Java Checker program, which determines whether a problem with the JVM is caused by an incorrect TCP/IP configuration BaseLibList File used to create JavaLibList, which you can use at run time to determine whether an UnsatisfiedLinkError will be thrown during a call to System.
double, NonStop Server for Java 4 performs no conversion. All float and double values remain in IEEE floating-point format when crossing the JNI boundary. For more information, see IEEE Floating-Point Implementation. ● When using the JNI_OnLoad function you must use the following name: JNI_OnLoad_libname ● where libname is the name of the library that your program passed to the System.loadLibrary function. The JNI_OnUnload function is not supported by NonStop Server for Java 4.
Calling Java Methods from C or C++ You can create your own C or C++ program and use the Invocation API to load the JVM into an arbitrary native program. Be sure to follow these guidelines: ● Compile code written in C++ by using the -Wversion3 compiler and the -WIEEE_float compiler command-line options. ● In the NonStop system environment, link the NonStop Server for Java 4 libraries into the custom-built main program.
system property. Linker and Compiler Options Compiler Options When you compile C++ source for use with NonStop Server for Java 4, you must use the following compiler option to identify which dialect of the C++ compiler is to be used: -Wversion3 Because NonStop Server for Java 4 does not support DLLs, never use the -Wcall_shared to compile JNI code.
TNS 1.7272337e-77F 1.1579208e77F IEEE 1.40239846e-45F 3.40282347e+38F Double-Precision Values For double-precision values, TNS floating-point representations have smaller exponents (and therefore, a smaller range) than IEEE floating-point representations, but they are more precise, as the following table shows: Floating-Point Representation Minimum Positive Decimal Value Maximum Decimal Value TNS 1.7272337110188889e-77 1.15792089237316192e77 IEEE 4.94065645841246544e-324 1.
Multithreaded Programming The Java virtual machine for the NonStop Server for Java 4 is multithreaded. It uses Standard POSIX Threads (product number T1248), which conforms to IEEE POSIX Standard 1003.lc. Threads are scheduled for execution by the Standard POSIX Threads library, not by the NonStop Kernel. All threads created within a process share the same process address space in the same CPU. With Standard POSIX Threads, one thread can never be preempted by another thread.
SelfishRunner[] runners=new SelfishRunner[NUMRUNNERS]; for (int i = 0; i < NUMRUNNERS; i++) { runners[i] = new SelfishRunner(i); runners[i].setPriority(2); } for (int i = 0; i < NUMRUNNERS; i++) runners[i].start(); } } SelfishRunner.java public class SelfishRunner extends Thread { private int tick = 1; private int num; public SelfishRunner(int num) { this.num = num; } public void run() { while (tick < 400000) { tick++; if ((tick % 50000) == 0) System.out.
● ● ● ● Socket I/O Terminal I/O Pipe I/O TMF transactions (com.tandem.tmf package) JToolkit provides a thread-aware API for performing I/O to Enscribe files, $RECEIVE, and Pathway servers by using Pathsend procedure calls. See the JToolkit Programmer's Reference. for more information. OSS file I/O operations are not thread-aware. These operations block the entire Java process for the duration of the operation.
● Be familiar with the issues discussed in the Application Programming with Standard POSIX Threads section of the OSS Programmers Guide. This section contains information about the jacket routines that make many of the available system calls thread-aware. The interfaces themselves, however, are documented in the OSS System Calls Reference Manual. To use these jacket routines, you need to add the following define in your native code.
pluggability permits applications to remain independent from underlying authentication technologies. New or updated authentication technologies can be plugged in without requiring modifications to the application itself. Applications enable the authentication process by instantiating a LoginContext object, which in turn references a Configuration to determine the authentication technology, or LoginModule, to be used in performing the authentication.
Debugging Overview NonStop Server for Java 4 supports Java Platform Debugger Architecture (JPDA) that provides debugging support for the Java platform.
JDI specification does not provide in-process debugging. Hence, a Java based tool called a debugger is used to debug another JVM running the Java application. This JVM, called the debuggee, also contains the back-end of the debugger that is responsible to accept the request from the front-end of the debugger and to respond to these requests. NonStop Server for Java 4 ships a terminal oriented non-GUI debugging tool.
Suspends the debuggee just before the main class loads. Optionally, you can specify the -Xinit argument to specify using only the interpreter and not the HotSpot compiler. Starting the Java Debugger (jdb) Tool Now, the Java Debugger (jdb) tool can be started to communicate with the debuggee by using the jdb command as described for various situations.
Then, you can use the Java Debugger tool to communicate with the debuggee process as explained under Debugging Overview. Deviations in JVM Specification Options The compiler specification options for both the java and jdb tools deviate from standard Java because NonStop Server for Java 4 implements only the HotSpot server VM and does not implement a client VM. Accordingly, the options that specify running the client VM are not valid.
Garbage Collection (GC) This topic discusses implementation-specific information about garbage collection for NonStop Server for Java 4. The topics are: ● General Information on Garbage Collection ● Heap Layout ● Managing Generation Size ● Implementation of Garbage Collector Types General Information on Garbage Collection In general, garbage collectors, the various GC algorithms, and modeling in the NonStop Server for Java 4 are the same as those implemented by Sun Microsystems in their JVM.
The generations are: ● Young (also called new) generation—The JVM allocates objects in the young generation pool. Minor garbage collection happens when this young generation is full and the JVM is unable to allocate new objects. The young generation also includes two survivor spaces. One survivor space is empty at any time and serves as a destination of the next GC operation, which copies the collection of any live objects in Eden and the other survivor space.
Note: At initialization time, the maximum size of the combined young and tenured generations and the maximum size of permanent generation are allocated. Implementation of Garbage Collector Types The default garbage collectors in NonStop Server for Java 4 are ● Copying collector for the young generation ● Mark-sweep collector for the tenured generation NonStop Server for Java 4 uses these garbage collectors because they are the most efficient on the NonStop system.
disabled. If you specify this option, the JVM exits with the error: -XX:+AggressiveHeap option is not supported on this platform. Concurrent Low-Pause Collector A concurrent low-pause collector is for tenured generation. This collector does most of the collection concurrently with the application execution. This collector divides the collection into different phases and does some phases concurrently with the application execution and others in "stop the world" mode.
generation. The parameters for the young-generation heap are listed below: ● XX:NewRatio=nn The ratio between the young and old. ● XX:NewSize=nn The lower size bound. ● XX:MaxNewSize=nn The upper size bound. ● XX:SurvivorRatio=nn Tune the survivor spaces (illustrated in the Layout for Generations).
JVM Tuning Tools PrintGCStats is a tool for mining verbose:gc logs that can aid analyzing and tuning garbage collection. You can download this tool from the following location: http://java.sun.com/developer/technicalArticles/Programming/turbo/PrintGCStats.zip Additionally, for a discussion of profiling tools, see the Application Profiling section.
1-> status segment $ZM00, detail. QIO Detailed Status SEGMENT \NAVAE1.$ZM00 State.................. Segment State.......... Segment Type........... Segment Size........... MDs in Use............. Max MDs Used........... Last Fail Size......... Current Pool Size...... Max Pool Size.......... Current Pool Alloc..... Current Pool Frags..... DEFINED STARTED FLAT_UA 536870912 1258 1589 0 16774788 Initial Pool Size...... 16776992 16776992 Min Pool Size.......... 16776992 5039616 Max Pool Alloc.........
TACL> vproc $SYSTEM.sysnn.ZCRESRL Where sysnn is the system number. Determining the Heap Setting You should set the Java heap to a value appropriate for your application. For most application-server environments, the heap size is set high to optimize performance. This size can be more than 256 MB (after QIO has been moved to KSEG2). To study the frequency and length of the JVM Garbage Collection operation, use the -verbose:gc option in the JVM arguments.
_____________________________________________________________________________ NSKIn the preceding output, the JVM process ($JSV1) uses 331 MB of swap space and has two segments allocated. This JVM process was started with a heap size of 256 MB, which shows that apart from the Java heap, the process requires about 75 MB for process-specific and application-specific data.
Contents | Index | Glossary | Prev | Next Transactions The NonStop Server for Java 4 lets you work with transactions in several ways. You can: ● Use the Current class methods to define transactions across transaction services, such as transactions that include JDBC calls. ● Use the Java Transaction API (JTA).
Current Class Methods The Current class is based on version 0.5 of the Java Transaction Services (JTS) specification. The following table describes the Current class methods. Method Description begin Starts a new transaction and associates it with the calling thread. commit Commits the transaction associated with the calling thread. get_control Gets a Control object representing the transaction associated with the calling thread.
tx.begin(); // ... access Pathway server // commit current transaction (JDBC and Pathway) tx.commit(true); For more information on the Current class, see the com.tandem.tmf.Current documentation. Java Transaction API (JTA) NonStop Server for Java 4 supports transactions by means of the NonStop Server for Java Transaction API, which is an implementation of the Sun Microsystems JTA Version 1.0. NonStop Server for Java Transaction API implements parts of the Sun Microsystems JTA package, javax.transaction.
javax.transaction Interfaces The Sun Microsystems JTA package, javax.transaction, defines the following interfaces: ● Status ● Synchronization ● Transaction ● TransactionManager ● UserTransaction NonStop Server for Java Transaction API supports all of the preceding interfaces, but only UserTransaction is available to client programs. UserTransaction allows the client to control transaction boundaries programmatically.
NonStop Server for Java Transaction API-TMF by Default The following code gets a reference to UserTransaction based on TMF (by default). It then starts and ends a transaction. import javax.transaction.UserTransaction; import com.tandem.jta.JTAFactory; // Get a reference to UserTransaction based on TMF (by default). UserTransaction utx = JTAFactory.getUserTransaction(); // Start transaction utx.begin(); // Do work ... // Commit transaction utx.
import com.tandem.jta.JTAFactory; // Get a reference to UserTransaction based on JTS. UserTransaction utx = JTAFactory.getUserTransaction(JTAFactory.JTS); // Start transaction utx.begin(); // Do work ... // Commit transaction utx.commit(); Note: NonStop Server for Java Transaction API-TMF is intended for applications other than CORBA applications. NonStop Server for Java Transaction API-JTA is intended for CORBA applications.
Contents | Index | Glossary | Prev | Next Application Profiling With a profiling tool, you can get information about your Java program's CPU usage, heap allocation, and threads. Using this information, you can tune an application. The tools supported by NonStop Server for Java 4 include: ● Java Virtual Machine Profiler Interface (JVMPI) provides a profiler interface that tool vendors can use to develop GUI tools for profiling Java programs.
Using the HPROF Profiler Agent You can use the HPROF Profiler Agent for profiling your application. In the NonStop Kernel Open System Services (OSS) environment, HPROF is statically linked. HPROF writes out profiling information either to a file or to a socket in ASCII or binary format. By using HPROF, you can get information about your application's CPU usage, heap allocation, and threads.
Running the HPROF Java Profiler To run the HPROF Java profiler, use the -Xrunhprof option on the java command. The format is: java -Xrunhprof:[help]|[option=value, ...] Use the following java command to get a listing of HPROF help, which displays option-value pairs you can use with NonStop Server for Java 4.
Example 2: cpu=times CPU TIME (ms) BEGIN (total rank self accum count 1 6.89% 6.89% 22920 2 3.14% 10.03% 2638848 3 1.70% 11.74% 2639051 ........ CPU TIMES END = 2801506) Mon Jan 7 10:41:41 2002 trace method 6668 WorkClass.doSomeThing 10198 java/util/HashMap.access$2 16945 java/lang/String.equals Example 3 (heap=sites) SITES BEGIN (ordered by live bytes) Wed DEC 19 11:26:18 2001 percent live alloc'ed stack class rank self accum bytes objs bytes objs trace name 1 34.27% 34.
toexit=full-method-name Specifies to stop and generate a dump when this method exits. Example The following command shows using the fexit, upto, and only special options. java -Xrunhprof:fexit=Test1.init,upto=Queue.cleanup,only=MyThread Test1 For more information, see the HPROF Profiler Agent described under Java Virtual Machine Profiler Interface Machine Profiler Interface (JVMPI) (http://java.sun.com/j2se/1.4.2/docs/guide/jvmpi/jvmpi.html).
Add threads: thread=y To determine whether the program uses a complex multithreaded scheme, use the monitor option monitor=y ❍ ● An empty result list is good. Using HPjmeter You can use the HPjmeter for profiling your application. On the NonStop server platform, HPjmeter allows you to view profiler data graphically. You can obtain HPjmeter without charge from HP.
Contents | Index | Glossary | Prev | Next Migrating to Version 2 of NonStop Server for Java 4 This section describes the changes you need to make to migrate applications that use earlier versions of the NonStop Server for Java (software product number T0083) and earlier versions of NonStop Server for Java 4 to version 2 of NonStop Server for Java 4 (software product number T2766). See the table below for the topics that apply to migrating from particular versions.
Installation Changes The standard location for the NonStop Server for Java 4 is a location of the form: /usr/tandem/nssjava/jdk142_v20 where jdk142 refers to the version number of the Sun Microsystems update upon which NonStop Server for Java 4 is based. The number v20 identifies the particular NonStop Server for Java 4 PVU. When the PAX file is extracted, a symbolic link is created at the standard location: /usr/tandem/java.
product in either your CLASSPATH environment variable setting or the -classpath (-cp) command-line argument. User-Provided JAR Files Previously, many users also installed JAR files in /usr/tandem/java/jre/lib/ext because they did not have to include such JAR files in their CLASSPATH. Beginning with version 1 of the NonStop Server for Java 4, HP recommends you do not install user-provided JAR files in any directory of versions 1 and 2 of the NonStop Server for Java 4 tree.
Floating-Point Support By default, NonStop Server for Java 3.1.x and earlier versions converted any floating-point value that crossed the Java Native Interface (JNI) boundary to a TNS float. This default could be overridden by supplying a line in the file TandemVMClassFP.properties. If a particular class needed IEEE floating-point values passed to its JNI code instead of TNS float values; users added a property (with the name of the class being the name of the property) to this file.
example, assume that JNI code, written for a previous version of Java, converts a TNS floating-point value to a string, which is then passed to Java. To migrate the program, you must change the JNI code to convert the TNS floating-point value to an IEEE floating-point value and then call sprintf to convert the floating-point value to a string. For more information, see IEEE Floating-Point Implementation. Using AWT Classes If your Java programs use AWT classes with NonStop Server for Java 3.1.
The POSIX threads calls in T1248 have changed to conform to the standard; therefore, any native code for NonStop Server for Java 3.1.x applications that makes POSIX threads calls might have to change to use the standard pthread routine. For more information, see Appendix D in the Open System Services Porting Guide, which contains a list of differences between the POSIX thread routines in T5819 and the routines in T1248.
MIGRATION_CHECK. Running this migration check causes the compiler to issue a warning when a class or member function is present that has changed or become obsolete for version 3. See the C/C++ Programmers Guide for more information about this pragma and the warnings it can produce. For invocation API users, the switch to version 3 affects which shared run-time libraries (SRLs) are specified in the link step to create the executable.
Contents | Index | Prev | Next Glossary ABCDEFGHIJKLMNOPQRSTUVWXYZ A abstract class In Java, a class designed only as a parent from which subclasses can be derived, which is not itself suitable for instantiation. An abstract class is often used to "abstract out" incomplete sets of features, which can then be shared by a group of sibling subclasses that add different variations of the missing pieces. Abstract Window Toolkit (AWT) The package that implements graphical user interfaces for Java.
A set of functions or procedures that are called by an application program to communicate with other software components. ASCII See American Standard Code for Information Interchange (ASCII). AWT See Abstract Window Toolkit (AWT). B BDK See JavaBeans Development Kit (BDK). branded A Java virtual machine that Sun Microsystems, Inc. has certified as conformant. browser A program that allows you to read hypertext.
A software process, hardware device, or combination of the two that requests services from a server. Often, the client is a process residing on a programmable workstation and is the part of a program that provides the user interface. The workstation client might also perform other portions of the program logic. Also called a requester. command The operation demanded by an operator or program; a demand for action by, or information from, a subsystem.
D Data Control Language (DCL) The set of data control statements within the SQL/MP language. Data Definition Language (DDL) A language that defines all attributes and properties of a database, especially record layouts, field definitions, key fields, field locations, file locations, and storage strategy. DCL See Data Control Language (DCL). DDL See Data Definition Language (DDL). debuggee A process being debugged.
E Enscribe HP database management software that provides a record-at-a-time interface between servers and a database. As an integral part of the operating system distributed across two or more processors, Enscribe helps ensure data integrity if a processor module, I/O channel, or disk drive fails. Files on a NonStop system can be Enscribe files, SQL/MP tables, or SQL/MX tables. Enscribe files can be either structured or unstructured.
as their API. Interactive users of the Guardian environment use the TACL or another HP product's command interpreter. Compare to OSS. GUI See graphical user interface (GUI). H Hotspot virtual machine See Java Hotspot virtual machine. HP JDBC Driver for SQL/MP (JDBC/MP) The product that provides access to SQL/MP and conforms to the JDBC API. HP JDBC Driver for SQL/MX (JDBC/MX) The product that provides access to SQL/MX and conforms to the JDBC API.
HP NonStop Transaction Management Facility (TMF) An HP product that provides transaction protection, database consistency, and database recovery. The NonStop Server for Java's NonStop SQL/MP drivers call procedures in the TMF subsystem. HP NonStop TS/MP (TS/MP) An HP product that supports the creation of Pathway servers to access SQL/MP or Enscribe databases in an online transaction processing (OLTP) environment.
interactive Question-and-answer exchange between a user and a computer system. interface In general, the point of communication or interconnection between one person, program, or device and another, or a set of rules for that interaction. See also API. International Electrotechnical Commission (IEC) A standardization body at the same level as ISO.
IPv4. IPv6 is a new version of IP designed to allow the Internet to grow steadily, both in terms of number of hosts connected and the total amount of data traffic transmitted. (IP is pronounced eye-pea.) IPv6 See Internet Protocol version 6 (IPv6). ISO See International Organization for Standardization (ISO). iTP Secure WebServer The HP web server with which the NonStop Server for Java integrates using servlets. Formerly called CyberWeb.
for SQL-based database access. Java HotSpot virtual machine The Java virtual machine implementation designed to produce maximum program-execution speed for applications running in a server environment. This virtual machine features an adaptive compiler that dynamically optimizes the performance of running applications. Java IDL See Java Interface Development Language (Java IDL) Java Interface Development Language (Java IDL) The library that supports CORBA and Java interoperability.
JavaBeans Development Kit (BDK) A set of tools for creating JavaBeans that is included with the NonStop Server for Java 4. javac The Java compiler, which compiles Java source code into bytecode. Also, the command to run the Java compiler. javachk The Java Checker, which determines whether a problem with the Java virtual machine is due to an incorrect TCP/IP configuration. Also, the command to run the Java checker.
The Java run-time environment, which executes Java bytecode. JTA See Java Transaction API (JTA). JTS See Java Transaction Service (JTS). jts.Current A JTS interface that lets you define transaction boundaries. The NonStop Server for Java 4 includes an implementation of jts.Current. JVM See Java virtual machine (JVM). K key One of the following: ❍ A value used to identify a record in a database, derived by applying a fixed function to the record.
N native In the context of Java programming, something written in a language other than Java (such as C or C++) for a specific platform. native method A non-Java routine (written in a language such as C or C++) that is called by a Java class. native2ascii The Native-to-ASCII converter, which converts a file with native-encoded characters into one with Unicode-encoded characters. Also, the command to run the Native-to-ASCII converter.
❍ The complementary reconstruction of the object graph from the stream Object Serialization is used for lightweight persistence and for communication by means of sockets or RMI. The default encoding of objects protects private and transient data, and supports the evolution of the classes. A class can implement its own external encoding and is then solely responsible for the external format. Object Transaction Service (OTS) The transaction service standard adopted by the OMG and used as the model for JTS.
Pathsend API The application program interface to a Pathway system that enables a Pathsend process to communicate with a server process. Pathsend process A client (requester) process that uses the Pathsend interface to communicate with a server process. A Pathsend process can be either a standard requester, which initiates application requests, or a nested server, which is configured as a server class but acts as a requester by making requests to other servers. Also called a Pathsend requester.
An encryption key that is not known to all parties. protocol A set of formal rules for transmitting data, especially across a network. Low-level protocols define electrical and physical standards, bit-ordering, byte-ordering, and the transmission, error detection, and error correction of the bit stream. High-level protocols define data formatting, including the syntax of messages, the terminal-to-computer dialogue, character sets, sequencing of messages, and so on. Pthread A POSIX thread.
The Java RMI stub compiler, which generates stubs and skeletons for remote objects. rmicregistry The Java Remote Object Registry, which starts a remote object registry on the specified port on the current host. S scalability The ability to increase the size and processing power of an online transaction processing system by adding processors and devices to a system, systems to a network, and so on, and to do so easily and transparently without bringing systems down. Sometimes called expandability.
scalability and persistence from the Pathway CGI server that manages it. The Java class named servlets executes in server environments such as World Wide Web servers. The Servlet API is defined in a draft standard by Sun Microsystems. The servlets class is not in the Core Packages for the SDK. shell The command interpreter used to pass commands to an operating system; the part of the operating system that is an interface to the outside world. SIP See Scalable TCP/IP (SIP).
version. stored procedure in Java (SPJ) A stored procedure whose body is a static Java method. stub One of the following: ❍ A dummy procedure used when linking a program with a run-time library. The stub need not contain any code. Its only purpose is to prevent "undefined label" errors at link time. ❍ A local procedure in a remote procedure call (RPC). A client calls the stub to perform a task, not necessarily aware that the RPC is involved.
backups. Transmission Control Protocol/Internet Protocol (TCP/IP) One of the most widely available nonvendor-specific protocols, designed to support large, heterogeneous networks of systems. TS/MP See HP NonStop TS/MP. U Unicode A character-coding scheme designed to be an extension of ASCII.
news, as well as those available by means of the HTTP protocol used to transfer hypertext documents. The client program (known as a browser) runs on the user's computer and provides two basic navigation operations: to follow a link or to send a query to a server. wrapper A shell script that sets up the proper execution environment and then executes the binary file that corresponds to the shell's name. WWW See World Wide Web (WWW).
Contents | Index | Glossary | Prev | Next List of Examples Section Title Example Title(s) Getting Started ● Verifying the Java Installation ● Tutorial: Running a Simple Program, HelloWorld Installation and Configuration ● Examples of Using the Customer Makefile Implementation Specifics ● Determining QIO Segment Size ● QIO Segment Moved to KSEG2 ● Identifying Swap Usage of a Process or Swap Requirement for a CPU ● NonStop Server for Java Transaction API-TMF by Default ● NonStop Server fo
Contents | Index | Glossary | Prev | Next List of Figures Section Title Figure Title(s) Introduction to NonStop Server for Java 4 ● Java Based Products on NonStop Systems Implementation Specifics ● The Java Platform Debugger Architecture Structure ● Layout for Generations ● Profiling Environment Application Profiling NonStop Server for Java Programmer's Reference (526238-002) © 2004 Hewlett-Packard Development Company L.P. All rights reserved.
Contents | Index | Glossary | Prev | Next List of Tables Section Title Table Title(s) About This Manual ● Document Sections Introduction to the NonStop Server for Java ● Headless Support for Visual Feature Packages Installation and Configuration ● Subdirectories of the /usr/tandem/java Directory ● Demonstration Programs ● Floating-Point Ranges ● Double-Precision Ranges ● Summary of Garbage Collector Implementations Transactions ● Current Class Methods Application Profiling ● Main Pr
Contents | Glossary | Prev Index /ABCDEFGHIJKLMNOPQRSTUVWXYZ Special Characters /usr/tandem/java symbolic link A Abbreviations used in this document Abstract Window Toolkit (AWT) Additional files in NonStop Server for Java 4 API Enscribe Java SDK JDBC Pathsend Pathway Application server See BEA Weblogic Server Audience for this document Authentication service Authorization service AWT classes headless support for migrating B BEA Weblogic Server Beans See JavaBeans Binary files installation
migration Binding libraries into the JVM C C/C++ methods, calling from Java C++ compiler options CLASSPATH environment variable ENV serverclass attribute Compiler C++ Java HotSpot server javac tool Compiling Java source SQL/MP Compliance See also Deviations Concurrent low-pause collector Configuration for NonStop Server for Java for RMI Configuring, Pathway serverclass Conventions, notation CORBA See NonStop CORBA CPU, designating Creating Java source file swap files Current class methods D Data conversio
SQLJ Databases, storing procedures Debugging Java and JNI code JNI code overview starting the Java Debugger (jdb) tool transports Demonstration programs Deviations Directory, NonStop Server for Java contents of structure of DNS (Domain Name Server) Document structure Domain Name Server (DNS) Double-precision values, converting Drivers, JDBC See JDBC drivers E Enscribe API Environment variables See also CLASSPATH, JREHOME, and PATH ENV Pathway serverclass attribute Exception, headless F Features of J2SE SD
IEEE implementation of linker options migration considerations G Garbage collection collector types, implementation general information heap layout managing generation size tuning Generation See Heap, Permanent generation, Tenured generation, Young generation Getting started H Headless support exception Java Print Service (JPS) implementation Heap generations layout manager, determining managing generation size setting tuning HelloWorld sample program HotSpot compiler See Java HotSpot virtual machine HPjm
Installation changes in verifying Installing NonStop Server for Java IPv6 support J JAAS See Java Authentication and Authorization Service (JAAS) JAR file locations Java, learning about Java 2 Platform, Standard Edition (J2SE), SDK Java Abstract Window Toolkit (AWT) Java Authentication and Authorization Service (JAAS) See also migration Java based products descriptions documentation Java Checker (javachk) Java Database Connectivity Java Debugger (jdb) tool starting jdb jdb, command-line option deviations J
example of use Java Transaction API (JTA) Java Transaction Service (JTS) Java virtual machine (JVM) binding libraries into headless support tuning tools specification options, deviations verifying version JavaBeans javac tool javachk (Java Checker) jdb command-line options, deviations See also Java Debugger (jdb) tool JDBC drivers introduction demonstration programs linking in type 2 type 4 JDK (Java Development Kit) See Features of J2SE SDK 1.4.
JVM See Java virtual machine (JVM) K Korn shell KSEG2 L Learning about Java about Open System Services about UNIX Libraries, binding into the JVM Library files, naming Link, symbolic Linking in native libraries M Makefile for binding libraries into the JVM Memory management See also Heap moving QIO to KSEG2 Migrating applications AWT classes, use of floating-point support installation changes JAR file locations, Java based products JAR file locations, user-provided POSIX threads Multithreaded programming
N NonStop CORBA NonStop Java Transaction API NonStop Server for Java Directory contents of structure of NonStop Server for Java document set NonStop Server for Java Message Service NonStop Servlets for Java ServerPages NonStop SQL databases accessing with JDBC drivers accessing with SQLJ storing procedures NonStop SQL/MX accessing with JDBC drivers accessing with SQLJ stored procedure in Java NonStop Technical Library NonStop Tuxedo, Jolt client Notation conventions NSKCOM utility O Open System Services (O
Pathway serverclass Performance, application Permanent generation Prerequisites Print service Priority, threads Process name, designating Profiling using HPjmeter using the HPROF profiler agent POSIX threads binary files implementation migrating Pthreads See POSIX threads Q QIO R Related reading NonStop system computing documents Sun Microsystems documents Remote Method Invocation (RMI) configuring DNS and TCP/IP for Requirements configuration installation RMI See Remote Method Invocation (RMI) Running de
S Scalable TCP/IP Scheduling threads Shell See Open System Services (OSS) See also Korn shell Serverclass See Pathway serverclass Servlets See NonStop Servlets for Java ServerPages Signal handlers, limitations Sockets Java Checker (javachk) java command line RMI TCP/IP configuration, debugging TCP/IP transports thread-aware equivalent SQL databases accessing with JDBC drivers accessing with SQLJ Stored Procedures in Java SQL/MP compiler SQLJ Stored Procedures in Java Structure of NonStop Server for Java dir
managing size Threading See Multithreaded programming TMF (Transaction Management Facility) and JTA transaction jacket routines TNS floating point range in value calling functions Toolkit See JToolkit for NonStop Servers See also JoltBeans toolkit Total Information Manager (TIM) See NonStop Technical Library Tracing See TMF (Transaction Management Facility) Transactions concurrent Tuning application performance garbage collection JVM tools for related guides Tutorial OSS user commands running a simple progr
Virtual Machine See Java virtual machine (JVM) vproc command C runtime heap manager java version W whence command -Wversion3 C++ dialect option compiling migration Y Young generation description heap tuning managing size /ABCDEFGHIJKLMNOPQRSTUVWXYZ Contents | Glossary | Prev NonStop Server for Java Programmer's Reference (526238-002) © 2004 Hewlett-Packard Development Company L.P. All rights reserved.