Contents | Index NonStop Server for Java 5.1 Programmer's Reference Abstract This document describes the HP NonStop™ Server for Java™, based on Java 2 Platform Standard Edition 5.0, a Java environment that supports compact, concurrent, dynamic, and portable programs for the enterprise server. The NonStop Server for Java uses the HP NonStop operating system to add scalability and program persistence to the Java environment. Product Version HP NonStop Server for Java 5.
529774-001 For TNS/R, HP NonStop Server for Java, based on Java 2 Platform, Standard Edition, SDK 1.4.2, Version 2.0 For TNS/E, HP NonStop Server for Java, based on Java 2 Platform, Standard Edition, SDK 1.4.2, Version 1.0 May 2005 544819-001 HP NonStop Server for Java 5.1 November 2007 544819-002 HP NonStop Server for Java 5.1 September 2008 544819-003 HP NonStop Server for Java 5.1 December 2009 544819-004 HP NonStop Server for Java 5.1, based on Java 2 Platform, Standard Edition 1.5.
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. OSF shall not be liable for errors contained herein or for incidental consequential damages in connection with the furnishing, performance, or use of this material. © 1990, 1991, 1992, 1993 Open Software Foundation, Inc. This documentation and the software to which it relates are derived in part from materials supplied by the following: © 1987, 1988, 1989 Carnegie-Mellon University. © 1 989, 1990, 1991 Digital Equipment Corporation.
Title Page NonStop Server for Java 5.1 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 Server for Java Library ■ NonStop System Computing Documents ■ Sun Microsystems Documents ❍ Notation Conventions ❍ Abbreviations Introduction to NonStop Server for Java 5.
● ■ JDBC Drivers for NonStop SQL Database Access ■ JToolkit for NonStop Servers ■ NonStop CORBA ■ NonStop Servlets for Java ServerPages ■ NonStop Server for Java Message Service (JMS) ■ NonStop Tuxedo: Jolt Client ■ 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
❍ Additional Environment Variables ❍ Java Native Interface (JNI) ❍ ❍ ■ Calling C or C++ Methods from Java ■ Calling Java Methods from C or C++ ■ Linker and Compiler Options ■ How to Create Your Own Library of Native Code IEEE Floating-Point Implementation ■ Floating-Point Values ■ Double-Precision Values ■ How to Call TNS Floating-Point Functions from JNI Code Multithreaded Programming ■ Thread Scheduling ■ Threading Considerations for Java Code ■ Threading Considerations for Native
● ● ■ Managing Generation Size ■ Implementation of Garbage Collector Types ❍ GC Log Rotation ❍ Java GC Tuning for Application Performance ❍ Java GC Profiling ❍ 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.
● Migrating Applications ❍ Installation Changes ❍ Public Library Directory ❍ Java Based JAR File Locations ■ For Java Based Products ■ User-Provided JAR Files ❍ Dynamic Link Libraries (DLLs) ❍ Makefile to Link Native Libraries ❍ Compling C++ Native Code with the -Wversion3 Option ❍ Floating-Point Support ❍ Using AWT Classes ❍ POSIX Threads ❍ Directories of Binary Files Moved ❍ Character Handling ❍ BigDecimal Class ❍ JAAS Enhancement ❍ Miscellaneous Changes for Migration to TNS
Title Page | 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 Changes added to this revision partnumber 544819-004 are: ● Feature Changes ● Documentation Changes Feature Changes NonStop Server for Java 5.
❍ GC Log Rotation ● Added a note under Java Print Service (JPS). ● Added the Monitoring a live Java application section under Application Profiling. ● Added Appendix B. Addendum to HPjmeter 4.0 User’s Guide. Changes added to this revision partnumber 544819-003 are: ● Feature Changes ● Documentation Changes Feature Changes NonStop Server for Java 5.1 supports these new features: ● The JREHOME environment variable need not be set to launch Java installed in a nonstandard location.
Changes added to this revision partnumber 544819-002 are: ● Feature Changes ● Documentation Changes Feature Changes NonStop Server for Java 5.1 supports this new feature: ● -Dnsk.java.nonblocking=true is an HP proprietary option to enable Non-Blocking I/O for OSS regular files feature in Java applications. This feature enables you to perform regular I/O operations on multiple OSS files simultaneously, thereby enhancing the performance of standard I/O operations on OSS regular files.
Documentation Changes The documentation changes are: ● Updated the current product references from NonStop Server for Java 5 to NonStop Server for Java 5.1 ● Added the support of -Xeprof under Using -Xeprof Java Profiler. ● Added the support of -Xverbosegc under Java GC Profiling. ● Added -Xeprof, -Xverbosegc, and a Java hotspot complier backend (C3) in Glossary. ● Added Limitations of Using HPjmeter on HP NonStop operating system Is This Document for You? This NonStop Server for Java 5.
Document Structure This document is a set of linked HTML files (web pages). Each file corresponds to one of the sections listed and described in the following table. Document Sections Section Description Table of Contents Shows the structure of this document in outline form. Each section and subsection name is a link to that section or subsection. About This Document Describes the intended audience and the document structure, lists related documents, and explains notation conventions and abbreviations.
Appendix A. Summary of JDK 5.0 New Features Summarizes the supported and unsupported features of NonStop Server for Java 5.1. Glossary Defines many terms that this document uses. List of Examples Lists the examples in this document. Each example name is a link to that example. List of Figures Lists the figures in this document. Each figure name is a link to that figure. List of Tables Lists the tables in this document. Each table name is a link to that table.
NonStop Server for Java Library ● In addition to this manual, the NonStop Server for Java library includes: NonStop Server for Java 5.1 Tools Reference ● Provides a page for each Java tool and links to the Sun Microsystems web site where the detail information on that site applies. NonStop Server for Java API Provides the API description for these packages ❍ com.tandem.os ❍ com.tandem.tmf ❍ com.tandem.
■ ❍ ddl2java tool, which generates Java code based on Data Definition Language (DDL) Dictionary definitions. WebLogic Server for the HP NonStop Server Platform Guide ● This manual describes the installation, configuration, and management of the BEA WebLogic Server on HP NonStop servers. C/C++ Programmer's Guide ● Describes the HP implementation of the C and C++ programming languages for NonStop systems.
● as MXCS. This product enables applications developed for the Microsoft® Open Database Connectivity (ODBC) application programming interface and other connectivity APIs to use SQL/MX to access NonStop SQL databases on an HP NonStop system. Open System Services Installation Guide ● Explains how to install the OSS environment.
❍ SQL/MP Version Management Guide ❍ Explains the rules governing version management for the NonStop SQL software, catalogs, objects, messages, programs, and data structures. SQL/MP Messages Manual Explains NonStop SQL/MP messages for the conversational interface, the application programming interface (API), and the utilities. ● ❍ SQL/MP Programming Manual for C ❍ Describes the SQL/MP programmatic interface for ANSI C. Also describes embedded SQL statements used in C applications.
❍ SQL/MX Reference Manual ❍ Describes SQL/MX language elements (such as expressions, predicates, and functions) and the SQL statements that can be run in MXCI or in embedded programs. Also describes MXCI commands and utilities. SQL/MX Messages Manual ❍ Describes SQL/MX messages. SQL/MX Programming Manual for C and COBOL ❍ Describes the SQL/MX programmatic interface for ANSI C and COBOL.
processes. ● TS/MP System Management Manual Provides information about Pathway applications. You must be familiar with Pathway applications in order to configure Scalable TCP/IP (SIP) applications. Sun Microsystems Documents Note: Sun Microsystems J2SE Development Kit 5.0 documentation is provided on the NonStop Server for Java 5.1 product distribution CD in a self-extracting file for your convenience in case you cannot get Java documentation from the Sun Microsystems Web sites.
Notation Conventions Bold Type Bold type within text indicates terms defined in the Glossary. For example: abstract class Computer Type Computer type letters within text indicate keywords, reserved words, command names, class names, and method names; enter these items exactly as shown. For example: myfile.c Italic Computer Type Italic computer type letters in syntax descriptions or text indicate variable items that you supply. For example: pathname [ ] Brackets Brackets enclose optional syntax items.
Spaces shown between items are required unless one of the items is a punctuation symbol such as a parenthesis or comma. If there is no space between two items, spaces are not permitted. In the following example, spaces are not permitted before or after the period: subvolume-name.filename Line Spacing If the syntax of a command is too long to fit on a single line, each line that is to be continued on the next line ends with a backslash (\) and each continuation line begins with a greater-than symbol (>).
IEC. International Electrotechnical Committee IEEE. Institute for Electrical and Electronic Engineers IETF. Internet Engineering Task Force ISO. International Organization for Standardization J2SE. Java 2 Platform Standard Edition JAAS. Java Authentication and Authorization Service JAR. Java Archive JCK. Java Conformance Kit JDK. J2SE Development Kit JFC. Java Foundation Classes JDBC. Java Database Connectivity JDBC/MP. JDBC Driver for SQL/MP JDBC/MX. JDBC Driver for SQL/MX JNDI.
Pthread. POSIX thread RDF. Remote Database Facility RMI. Remote Method Invocation RVU. release version update SIP. Scalable TCP/IP SPI. service provider interface SPJ. stored procedure in Java SQLJ. embedded SQL in Java programs SQL/MP. Structured Query Language/MP SQL/MX. Structured Query Language/MX TACL. HP Tandem Advanced Command Language TCP/IP. Transmission Control Protocol/Internet Protocol TMF. Transaction Management Facility URL. uniform resource locator VM. virtual machine WWW.
Title Page | Contents | Index | Glossary | Prev | Next Introduction to NonStop Server for Java 5.1 The HP NonStop Server for Java 5.1 is a Java environment that supports compact, concurrent, dynamic, portable programs for the enterprise server. The NonStop Server for Java 5.1 requires the HP NonStop Open System Services (OSS) environment. The NonStop Server for Java 5.
● J2SE Development Kit (JDK) Highlights ● Java Naming and Directory Interface (JNDI) Highlights ● IPv6 Support ● Associated Java Based Products Java HotSpot Server Virtual Machine The NonStop Server for Java 5.1 implements the HotSpot server compiler and the runtime Java HotSpot virtual machine. The HotSpot Server Java VM, provides a fast, reliable technology for the enterprise server environment. For more information about this VM, see The Java HotSpot Server VM (http://java.sun.
Because of the nonvisual nature of NonStop servers, the NonStop Server for Java 5.1 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 The J2SE JRE 5.0 release includes 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 J2SE JRE 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.
For detailed information on HP drivers that provide to access SQL/MX or SQL/MP, see the JDBC driver manuals at docs.hp.com. JToolkit for NonStop Servers The HP JToolkit for NonStop Servers includes three APIs as tools for using Java programs to access legacy applications on NonStop servers. JToolkit also includes Scalable TCP/IP (SIP) for developing network servers written in Java. The following paragraphs introduce these tools.
NonStop CORBA HP NonStop CORBA provides the Common Object Request Broker Architecture (CORBA) infrastructure and development environment that enables you to develop distributed object applications and components that run on the NonStop operating system. The NonStop CORBA infrastructure provides the services and tools to help software developers build object-oriented components and distributed object systems using either the C++ or the Java programming language.
fault-tolerance through process-pair technology. Features and functions of NSJMS include: ● Implements the JMS API on NonStop systems. Uses the publish and subscribe features of NonStop SQL/MX. ● Uses a Java Naming and Directory Interface (JNDI) environment that allows access to NSJMS connection factories, and queue objects or topic objects. ● Enables use of a persistent, reliable bridge environment to allow interoperability between NSJMS and a locally hosted foreign JMS provider.
Stored Procedures in Java Stored procedures in Java (SPJs) provide an efficient and secure way to implement business logic in an SQL/MX database. They allow you to write portable applications in Java and access an industry-standard SQL database. A SPJ is a type of user-defined routine (UDR) that operates within a database server. A UDR can be either a stored procedure, which does not return a value directly to the caller, or a user-defined function, which does return a value directly to the caller.
Title Page | Contents | Index | Glossary | Prev | Next Getting Started Although this manual assumes that you are familiar with using Java and HP NonStop 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.
because the NonStop Server for Java 5.1 is a headless implementation. Learning About Open System Services (OSS) OSS is the open computing interface to the HP NonStop 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." The OSS shell is a program that interprets the commands you enter, runs the programs you ask for, and sends output to your screen.
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/jdk151/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. For the version of the NonStop Server for Java 5.
/** * 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. Alternatively, at the OSS prompt, use the cat command to create the HelloWorld.java file and type the contents of the HelloWorld program listed previously. $cat> HelloWorld.java type-contents-of-the-file (Ctrl+y) 2. Set the JREHOME Shell Variable.
$export PATH=/usr/tandem/java/bin:$PATH If the NonStop Server for Java 5.1 is installed in a nonstandard location, /test_dir, type: $export PATH=/test_dir/java/bin:$PATH 4. Check Your Path Settings. Optionally, you can check whether your path is set correctly by using the whence command. Type: $whence -v java This command should display the fully qualified name of the java executable found in your path. If no Java executable is found, the command displays the message, "Java not found". 5.
Specifying the CPU and Process Name with Which an Application Runs You can specify which CPU an application process runs in and its process name by using options of the run utility. The run utility starts OSS programs with specific attributes.
the named serverclass. For example from the OSS prompt, start a PATHMON (process monitor) named $foo and set the ARGLIST at the PATHCOM prompt: $gtacl -p pathcom \$foo PATHCOM ..... =set serverclass ARGLIST -Xabend,MyClass,3000 This is similar to entering java -Xabend MyClass 3000 at an OSS shell prompt. The -Xabend argument to the java executable causes Java to abend instead of exiting with a non-zero exit code.
NonStop Server for Java 5.1 Programmer's Reference (544819-004) © 2010 Hewlett-Packard Development Company L.P. All rights reserved.
Title Page | 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 5.1 installation, see Verifying a Java Installation. Installation Requirements Regarding hardware, NonStop Server for Java 5.
Configuration Requirements This subsection explains how to configure your system for the J2SE JDK by understanding the following: ● Creating Larger or Additional Swap Files ● Setting Environment Variables ● Symbolic Link ● Configuring TCP/IP and DNS for RMI Note: Do not install any JAR or native library files under the NonStop Server for Java installation directory.
The PATH shell variable must be created in each shell in which you plan to run java or one of its tools. For this reason, it is a good idea to set the PATH in the .profile file in your home directory that is executed each time you log on to an OSS shell. See the Open System Services User's Guide for information on how to set the path in your startup file. Class Path The class search path (more commonly, class path) is the path that the Java runtime environment searches for classes and other resource files.
Suppose you want the Java runtime to find a class named Cool.class in the package utility.myapp. If the path to that directory is: /java/MyClasses/utility/myapp, you would set the class path so that it contains /java/MyClasses. To run that application, you could use the following java command: $java -classpath /java/MyClasses utility.myapp.
Failure to specify the JREHOME variable may cause the JVM to fail to start, prompting the following Java error message: Can't find class java.lang.NoClassDefFoundError. (Wrong classpath?) Alternatively, the JVM starts successfully but the jar files in the directory /usr/tandem/java/jre are used instead of the files under the directory where NonStop Server for Java 5.1 is installed. This can produce unpredictable results.
$ ln -s /usr/tandem/nssjava/jdk150_h51 java The symbolic link is always put in the directory where NonStop Server for Java 5.1 is installed, so if you use the -s option to specify an alternative installation directory during the unpaxing step, the symbolic link is install_dir/java instead of /usr/tandem/java. For example, if nssjava/jdk150_h51 is installed in /h/myjava, the symbolic link is /h/myjava/java, and this symbolic link points to the directory /h/myjava/nssjava/jdk150_h51.
/include C-language header files that support native code programming using the Java Native Interface and the Java Virtual Machine Interface. /install The javachk file /jre The root directory of the J2SE Runtime Environment. Includes core classes, classes supplied by HP, and runtime libraries. The core Java classes are in the lib/rt.jar file. /lib Classes other than core classes for support of the tools and utilities in the JDK software.
Title Page | 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 5.
Headless Support Because the HP NonStop operating system does not provide support for windowing operations, NonStop Server for Java 5.1 is a headless JVM that conforms to the Sun Microsystems headless support standard regarding Java Abstract Window Toolkit (AWT) classes and methods. For similar reasons, the NonStop Server for Java 5.1 does not support the AppletViewer tool.
Additional Environment Variable NonStop Server for Java 5.1 has an implementation-specific environment variable that you can use to control the runtime environment. The JAVA_PTHREAD_MAX_TRANSACTIONS environment variable specifies the maximum number of TMF transactions allowed per process. The default number allowed is 1000. For detailed information, see Controlling Maximum Concurrent Transactions.
● The JNI_OnUnload function is supported by NonStop Server for Java 5.1 on NS-series servers, but not supported on S-series servers. When naming library files, observe the following rules: ● Do not use names that begin with Tandem, tandem, or tdm. ● NonStop Server for Java 5.1 requires that all DLLs be named with a prefix lib and a sufix .so. So you must name your DLL as follows: libname.so where (name) signifies the string that is passed to the System.loadLibrary() call. libname.
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 -Wversion2 or -Wversion3 compiler, and the -WIEEE_float compiler command-line options. ● The NonStop Server for Java 5.1 provides DLLs. Therefore, you can build an executable and link it with the JVM DLL, libjvm.so.
Linker Options When building native libraries, you must use the following linker option: –set floattype IEEE_float How to Create Your Own Library of Native Code The javahjni demonstration program that comes with NonStop Server for Java 5.1 shows how to create a native library. You can find the javahjni demonstration program in the install-dir/demo/javahjni directory. IEEE Floating-Point Implementation Java uses IEEE floating-point arithmetic. Note: In NonStop Server for Java 5.
Floating-Point Representation Minimum Positive Decimal Value Maximum Decimal Value TNS 1.7272337110188889e-77 1.15792089237316192e77 IEEE 4.94065645841246544e-324 1.79769313486231570e+308 How to Call TNS Floating-Point Functions from JNI Code This topic describes how to call a TNS floating-point function from an IEEE floating-point function.
Multithreaded Programming The Java virtual machine for the NonStop Server for Java 5.1 is multithreaded. It uses Standard POSIX Threads, which conforms to IEEE POSIX Standard 1003.lc. Threads are scheduled for execution by the Standard POSIX Threads library, not by the operating system. All threads created within a process share the same process address space in the same CPU. With Standard POSIX Threads on NonStop systems, one thread can never be preempted by another thread.
private final static int NUMRUNNERS = 2; public static void main(String[] args) { 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.
Threading Considerations for Java Code A thread-aware function blocks only the thread calling that function, rather than blocking all threads in the process. At the Java program level, the following blocking operations are thread-aware and, therefore, block only the thread performing the operation rather than blocking all threads in Java: ● Socket I/O ● Terminal I/O ● Pipe I/O ● TMF transactions (com.tandem.
header files for this version of POSIX threads can be found in the directory: [install-dir]/java/include/oss where install-dir is the NonStop Server for Java 5.1 installation directory. ● Creating a thread for a task does not make the task run faster. The NonStop system does not have an implementation of native threads; threads run at a user level. Even on a multiprocessor NonStop system, all threads in a process are executed in the same processor as the process.
Java Print Service (JPS) The Java Print Service is implemented in NonStop Server for Java 5.1. The Java Print Service allows you to print on printers directly attached to NonStop systems and to network printers attached to a local area network (LAN) or wide area network (WAN). For information on configuring network printers, see the Spooler FASTP Network Print Processes Manual. For information on the Spooler subsystem, see the Spooler Utilities Reference Manual.
.. job.print(doc, null); .. .. Dynamic Saveabend File Creation The Dynamic Saveabend File Creation feature allows you to create a saveabend file of a running Java program, without abending (aborting) the Java program, by issuing a signal to the process. This feature allows the Java program to continue after the abend file is created. The time taken to create the abend file, that is, application pause time is low (measurable in milliseconds).
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. The LoginModule interface gives developers the ability to implement different kinds of authentication technologies that can be plugged in under an application. For example, one type of LoginModule may perform a username-password-based form of authentication.
● Debugging Java and JNI Code Debugging Overview NonStop Server for Java 5.1 supports Java Platform Debugger Architecture (JPDA) that provides debugging support for the Java platform.
For more details, see the Sun Microsystems Java Platform Debugger Architecture Documentation (http://java.sun.com/j2se/1.5.0/docs/guide/jpda/architecture.html). 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.
y means listen for a debugger application address=transport-address-for-this-connection The transport address is the port number in which the debuggee is listening on for the debugger. suspend=y 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.
knowledge about. Using Visual Inspect To Add an Event Breakpoint on DLL Open Event Because Visual Inspect does not support deferred breakpoints, you need ensure that a DLL is loaded before setting a breakpoint. Visual Inspect supports the DLL Open event breakpoint that suspends the program just after a DLL is loaded but before initialization routines are invoked. To add an Event Breakpoint on DLL Open event: 1. In Visual Inspect, choose View > Breakpoints in Application or Program Control view. 2.
Garbage Collector Types and java in the NonStop Java Tools Reference Pages. jdb: Java Debugger Command-Line Option Deviations -tclient Runs the application in the Java HotSpot client VM. Note: The -tclient option is not valid with NonStop Server for Java 5.1. -tserv Runs the application in the Java HotSpot server VM. Note: -tserv is the default option for NonStop Server for Java 5.1; therefore, specifying -tserv is optional.
Heap Layout In NonStop Server for Java 5.1, the memory is managed in generations (or memory pools) based on objects at different ages for Java objects. Layout for generations is illustrated and described below. Layout for Generations 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.
Sets the initial size for the combined young and tenured generation. The default initial size is 3058 kilobytes (K). Smaller values lead to shorter but more frequent garbage collections, larger values lead to longer but less frequent garbage collections. For large server applications, HP recommends that the initial size be equal to the maximum size. -Xmx Sets the maximum size for the combined young and tenured generation. The default maximum size is 64 megabytes (MB).
-XX:+UseParallelGC Specifies a parallel garbage collector. If you specify this option, the JVM exits with the error: -XX:+UseParallelGC option is not supported on this platform. -XX:+UseParNewGC Specifies a parallel garbage collection. This option is disabled. If you specify this option, the JVM exits with the error: -XX:+UseParNewGC option is not supported on this platform. -XX:+UseAdaptiveSizePolicy Specifies an adaptive size policy.
Incremental Low-Pause Collector By careful bookkeeping, the incremental (also called train) low-pause collector collects just a portion of the tenured generation at each minor collection. The collector tries to spread the large pause of a major collection over many minor collections. In overall throughput, this collector is slower than the default tenured generation collector.
Java GC Tuning for Application Performance The NonStop Server for Java 5.1 incorporates the HotSpot VM. This topic discusses the options available for tuning the JVM, suggests flags and values to tune the Java HotSpot VM, and points to HotSpot tuning information on the Internet. GC tuning is assisted by GC profile data which can be collected and analyzed as explained in the next section.
● ● As described earlier, the NonStop Server for Java 5.1 does not support the throughput collector (specified with the option XX:+UseParallelGC ) or the concurrent low pause collector (specified with the option XX:+UseConcMarkSweepGC ). Also, the following options do not apply either for the NonStop Server for Java 5.1 or the NonStop system: -XX:+UseBoundThreads Option to bind user level threads; Solaris specific -XX:+UseAltSigs Solaris specific.
Tuning Application Performance The topics are ● Memory Considerations: Moving QIO to KSEG2 ● Determining the Heap Manager ● Determining the Heap Setting ● Related Tuning Guides Memory Considerations: Moving QIO to KSEG2 Java server-side applications are typically configured with large Java heap sizes, in excess of 128 MB.
Segment Size........... MDs in Use............. Max MDs Used........... Last Fail Size......... Current Pool Size...... Max Pool Size.......... Current Pool Alloc..... Current Pool Frags..... 536870912 1258 1589 0 16774788 Initial Pool Size...... 16776992 16776992 Min Pool Size.......... 16776992 5039616 Max Pool Alloc......... 5128320 12 Max Pool Frags......... 18 The maximum pool size used in this case is 16 MB, which is well below the 128 MB limit, so QIO can be moved to KSEG2.
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.
FILE-BACKED SEGMENTS: None _____________________________________________________________________________ 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.
Title Page | Contents | Index | Glossary | Prev | Next Transactions The NonStop Server for Java 5.1 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. For the API specification, see the tandem.com.tmf package description in the NonStop Server for Java API Reference Method Description begin Starts a new transaction and associates it with the calling thread. commit Commits the transaction associated with the calling thread.
Current tx = new Current(); // start a new transaction in the current thread tx.begin(); // ... access Pathway server // commit current transaction (JDBC and Pathway) tx.commit(true); For more information on the Current class, see the tandem.com.tmf package description in the NonStop Server for Java API Reference. Java Transaction API (JTA) NonStop Server for Java 5.
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.
● The third example requests NonStop Server for Java Transaction API-JTS 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 ...
NonStop Server for Java Transaction API-JTS The following code gets a reference to UserTransaction based on JTS. It then starts and ends a transaction. import javax.transaction.UserTransaction; 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.
Title Page | 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 5.1 include: ● Java Virtual Machine Profiler Interface (JVMPI) provides a profiler interface that tool vendors can use to develop GUI tools for profiling Java programs.
profiler agent writing output to a file. Profiling Environment 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. To use HPjmeter, the dump file must be an ASCII text file and must be produced by NonStop Server for Java 5.1 after a normal termination or exception termination. If your application terminates with a signal, NonStop Server for Java 5.
where: options is a list of key[=value] arguments separated by commas. > –Xeprof is an HP proprietary option for profiling Java applications. The output of this tool is in a format which can be used to view and analyze the detailed statistics in an offline mode with HPjmeter. Generally, you can expect a twofold decrease of your Java application performance when profiling with -Xeprof.
CPU times Instrumentation: track-method entry and track-method exit times. HEAP dump Lists all live object instances in the heap. The list can get very long. HEAP sites Lists the total allocations per class, array, and so forth. MONITOR contention Lists the times spent by waiting threads. HPROF writes the information about the options to an output file in either ASCII or binary format. The default name of the output file is: java.hprof.
The -agent:libname Option To run the HPROF Java profiler, you can use the -agent:libname option on the java command. The format is: java -agent:libname=[options] This option loads the native agent library libname. For example, to run the HPROF Java profiler, the command is: java -agent:hprof For more information, see JVMTI Agent Command Line Options (http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html#starting).
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.27% 195984 4188 588528 24522 595 MyClass 2 24.22% 58.49% 94044 8246 868728 63412 1 [C ......... SITES END Monitoring a live Java application The Java application must be prepared for live mode of profiling by running HPjmeter agents. The HPjmeter agents are shipped on the NSJ 5.1 product CD as a new product T0866H31.
Tips ● ● ● ● ● In the java command, specify no compiler: -Djava.compiler=NONE In Java native code (JNI), the CPU options also time native code where line-number information is not available. CPU time is not measured when process is blocked, for example, on a call to SQL. To dump profiling information before the program exits: ❍ Be sure to specify the -Xrunhprof option.
Unsupported Feature: ● The Dynamic Attach feature is not supported on NSJ 5.1. For more information about java, see the NonStop Server for Java 5.1 Tools Reference Pages. Title Page | Contents | Index | Glossary | Prev | Next NonStop Server for Java 5.1 Programmer's Reference (544819-004) © 2010 Hewlett-Packard Development Company L.P. All rights reserved.
Title Page | Contents | Index | Glossary | Prev | Next Migrating Applications This appendix describes the changes required to migrate applications that use earlier versions of the NonStop Server for Java. Note the terminology: ● NonStop Server for Java 4 refers to the product based on J2SE SDK 1.4.x ● NonStop Server for Java 5.1 refers to the product based on J2SE JDK 5.0 See the table below for the topics that apply to migrating from particular versions.
Compiling C++ Native Code with the -Wversion 3 Option Applicable Applicable Applicable N/A N/A Floating-Point Support Applicable N/A N/A N/A N/A Using AWT Classes Applicable N/A N/A N/A N/A POSIX Threads Applicable N/A N/A N/A N/A Directories of Binary Files Moved Applicable N/A N/A N/A N/A Character Handling Applicable Applicable Applicable Applicable Applicable BigDecimal Class Applicable Applicable Applicable Applicable N/A JAAS Enhancement Applicable N/A N/A
Installation Changes The standard location for the NonStop Server for Java 5.1 is a location of the form: /usr/tandem/nssjava/jdk150_h51 where jdk150 refers to the version number of the Sun Microsystems update upon which NonStop Server for Java 5.1 is based. The number h51 identifies the particular NonStop Server for Java 5.1> PVU. When the PAX file is extracted, a symbolic link is created at the standard location: /usr/tandem/java. If you want to install NonStop Server for Java 5.
For Java Based Products Before version 1 of the NonStop Server for Java 4 (based on J2SE SDK 1.4.0), no guidelines were provided for where Java based products should install their JAR files. Many of these products installed their JAR files in the /usr/tandem/java/jre/lib/ext directory. Occasionally, the installation of a Java based product would overwrite a JAR file required by another Java based product, possibly causing a version mismatch.
● ● ● The customer Makefile no longer exists in the NonStop Server for Java 4 , 5 and 5.1 on TNS/E because DLL support precludes the need to bind user native code into the java executable. The _RLD_LIB_PATH environment variable, used only on the TNS/E platform, specifies the library path for user DLLs. For further information, see _RLD_LIB_PATH (TNS/E Only). The invocation API uses the JVM as a DLL; therefore, if you use this API, you do not need to statically link Java into your programs.
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.
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.x or earlier versions, change your program code to catch a HeadlessException rather than an UnsupportedClassException.
Wrapper or Development Toolkit routines (spt….) supplied with T1248. NOTE: Any user-developed code that makes such POSIX threads calls must change. Directories of Binary Files Moved If your NonStop Server for Java programs have references to bin/oss/posix_threads in Pathway configuration files or elsewhere, you must change them to use the NonStop Server for Java 5.1 installation bin directory. In NonStop Server for Java 3.1.
JAAS Enhancement In NonStop Server for Java 3.x and earlier versions, the Java Authentication and Authorization Service (JAAS) was an optional package (extension). JAAS is integrated into the NonStop Server for Java 4. JAAS augments the core Java 2 platform with APIs that allow authenticating users and enforcing access controls upon users. Traditionally, Java 2 provided code-source-based access controls (access controls based on where the code originated and who signed the code).
Debugger Visual Inspect is the preferred debugger for applications on TNS/E. For debugging native code, you can also use Native Inspect ($System.SYSnnn.EINSPECT command). Default Heap and Stack Sizes The default heap and stack sizes have changed for TNS/E hosted applications. ● On TNS/E systems, the default stack size is 512 KB; the minimum stack size is 64 KB. ● On TNS/E systems, the initial heap size is 18.25 MB; the default maximum heap size is 64 MB. dlfcn.
Title Page | Contents | Index | Glossary | Prev | Next Appendix A. Supported and Unsupported Features of NonStop Server for Java 5.1 NonStop Server for Java 5.1 includes all the features of NonStop Server for Java 5.0 which is based on core J2SE 5.0 . For detailed information about J2SE 5.0 new features, see New Features and Enhancements J2SE5.0 (http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html). J2SE 5.0 Features Not Implemented in NonStop Server for Java 5.1 J2SE 5.
Title Page | Contents | Index | Glossary | Prev | Next Appendix B. Addendum to HPjmeter 4.0 User’s Guide This appendix provides instructions for using the HPjmeter tool on the HP NonStopTM platform. It is based on the HP-UX HPjmeter 4.0 User’s Guide (Part Number: 5992-5899), available at: www.hp.com/go/hpjmeter/. The following sections correspond one-to-one to those in the HP-UX HPjmeter 4.0 User’s Guide.
Note: 1. The HPjconfig tool is not supported on a NonStop operating system. 2. Zero-preparation profiling is supported on NSJ 5.1, NSJ 6.0, and later releases. File Locations The default installation path on the NonStop operating system is /usr/tandem/hpjmeter. Attaching to the JVM agent of a Running Application Note: The Dynamic Attach feature is not supported on NSJ. Preparing to run Java Complete the following steps to prepare the Java application to run with the JVM agent: 1. On NSJ 5.1, NSJ 6.
Monitoring Applications Managing Node Agents Managing Node Agents on a NonStop Operating System Running a node agent as a daemon is not supported on a NonStop operating system. Profiling Applications Collecting Profile Data Profiling with -Xeprof Table 5-1 Supported –Xeprof options time_on time_slice times=quick|thorough On NonStop operating systems, the time interval between the start and stop signals must be more than five minutes.
Troubleshooting Identifying Version Numbers To identify the version number for HPjmeter components, run the following command: ● JVM agent for Integrity NonStop: $ vproc $JMETER_HOME/lib/oss/libjmeter.so ● Node agent for Integrity NonStop: $ vproc $JMETER_HOME/bin/nodeagent Installation On NonStop operating systems, the agents are installed in /usr/tandem/hpjmeter by default. The scripts found in /usr/tandem/hpjmeter/bin use the standard /usr/tandem/java installation as the reference JDK installation.
Title Page | Contents | Index | Glossary | Prev | Next NonStop Server for Java 6.0 Programmer's Reference (544819-004) © 2010 Hewlett-Packard Development Company L.P. All rights reserved.
Title Page | 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.
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. The browser gives some means of viewing the contents of nodes and of navigating from one node to another. Internet Explorer, Netscape Navigator, NCSA Mosaic, Lynx, and W3 are examples for browsers for the WWW. They act as clients to remote servers.
a subsystem. A command is typically conveyed as an interprocess message from a program to a subsystem. Common Gateway Interface (CGI) The World Wide Web standard interface for servers, often written in C. The NonStop Server for Java 5.1 supports CGI-like use of Java using servlets with iTP Secure WebServer. See also Pathway CGI. Common Object Request Broker Architecture (CORBA).
DCL See Data Control Language (DCL). DDL See Data Definition Language (DDL). debuggee A process being debugged. The process consists of the application being debugged, the Java VM running the application, and the Java VM Debug Interface (JVMDI). debugger A program designed to use the Java Debugging Interface (JDI) and connect to the (debuggee) so that a programmer can step through the debuggee process, examine the data, and monitor conditions such as the values of variables.
exceptions using try, catch, and finally blocks. Expand The HP NonStop operating system network that extends the concept of fault tolerance to networks of geographically distributed NonStop systems. If the network is properly designed, communication paths are constantly available even if there is a single line failure or component failure. expandability See scalability.
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 operating system The operating system for NonStop systems. HP NonStop Server for Java, based on Java 2 Standard Edition 5.0 The formal name of the NonStop Server for Java product whose Java HotSpot virtual machine conforms to the J2SE 5.0. See also NonStop Server for Java 5.1.
A reference (link) from a point in one hypertext document to a point in another document or another point in the same document. A browser usually displays a hyperlink in a different color, font, or style. When the user activates the link (usually by clicking on it with the mouse), the browser displays the target of the link.
❍ Stub networks such as individual LANs interoperability (1) The ability to communicate, execute programs, or transfer data between dissimilar environments, including among systems from multiple vendors or with multiple versions of operating systems from the same vendor. HP documents often use the term connectivity in this context, while other vendors use connectivity to mean hardware compatibility.
JAR file A Java Archive file, produced by the Java Archive Tool, jar. java The Java application launcher, which launches an application by starting a Java runtime environment, loading a specified class, and invoking that class's main method. Java 2 Platform, Enterprise Edition (J2EE platform) An environment for developing and deploying enterprise applications.
The Sun Microsystems product that specifies standard Java interfaces between a transaction manager and the parties involved in a distributed transaction system: the resource manager, the application server, and the transactional applications. For more information, see the Sun Microsystems JTA document (http://java.sun.com/products/jta/index.html). Java Transaction Service (JTS) The transaction API, modeled on OMG's OTS. The NonStop Server for Java 5.1 includes an implementation of the jts.Current interface.
JDBC See Java Database Connectivity (JDBC). JDBC/MP See HP JDBC Driver for SQL/MP (JDBC/MP). JDBC/MX See HP JDBC Driver for SQL/MX (JDBC/MX). JDK See J2SE development kit (JDK). JNDI See Java Naming and Directory Interface (JNDI). JNI See Java Native Interface (JNI). jre The Java runtime environment, which executes Java bytecode. See also J2SE Runtime Environment (JRE). JTA See Java Transaction API (JTA). JTS See Java Transaction Service (JTS). jts.
L LAN See local area network (LAN). local area network (LAN) A data communications network that is geographically limited (typically to a radius of 1 kilometer), allowing easy interconnection of terminals, microprocessors, and computers within adjacent buildings. Ethernet is an example of a LAN. M macro A sequence of commands that can contain dummy arguments. When the macro runs, actual parameters are substituted for the dummy arguments.
NSKCOM A program management tool for swap space. O Object Management Group (OMG) The standards body that defined CORBA.
OSS See Open System Services (OSS). OTS See Object Transaction Service (OTS). P package A collection of related classes; for example, JDBC. 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.
Portable Operating System Interface X (POSIX) A family of interrelated interface standards defined by ANSI and IEEE. Each POSIX interface is separately defined in a numbered ANSI/IEEE standard or draft standard. The standards deal with issues of portability, interoperability, and uniformity of user interfaces. POSIX See Portable Operating System Interface X (POSIX). private key An encryption key that is not known to all parties.
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.
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). skeleton In RMI, the complement of the stub. Together, skeletons and stubs form the interface between the RMI services and the code that calls and implements remote objects. socket A logical connection between two application programs across a TCP/IP network.
TCP/IP See Transmission Control Protocol/Internet Protocol (TCP/IP). Technical Documentation HP's Technical documentation is found at docs.hp.com. thread A task that is separately dispatched and that represents a sequential flow of control within a process. ThreadDumpPath A command line option to redirect thread dumps to a file. threads The nonnative thread package that is shipped with Sun Microsystems J2SE. throw Java keyword used to raise an exception.
See HP NonStop TS/MP. U Unicode A character-coding scheme designed to be an extension of ASCII. By using 16 bits for each character (rather than ASCII's 7), Unicode can represent almost every character of every language and many symbols (such as "&") in an internationally standard way, eliminating the complexity of incompatible extended character sets and code pages. Unicode's first 128 codes correspond to those of standard ASCII.
WWW See World Wide Web (WWW). X -Xeprof Java application profile collection option. -Xeverbosegc Java application's Garbage Collector (GC) activity profile collection option. ABCDEFGHIJKLMNOPQRSTUWXYZ Title Page | Contents | Index | Prev | Next NonStop Server for Java 5.1 Programmer's Reference (544819-004) © 2010 Hewlett-Packard Development Company L.P. All rights reserved.
Title Page | Contents | Index | Glossary | Prev | Next List of Examples Section Title Example Title(s) Getting Started Implementation Specifics Transactions Profiling Applications ● Verifying the Java Installation ● Tutorial: Running a Simple Program, HelloWorld ● 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 for Java Transaction API-TM
Title Page | Contents | Index | Glossary | Prev | Next List of Figures Section Title Figure Title(s) Introduction to NonStop Server for Java 5.1 ● Java Based Products on NonStop Systems Implementation Specifics ● The Java Platform Debugger Architecture Structure ● Layout for Generations ● Profiling Environment Application Profiling Title Page | Contents | Index | Glossary | Prev | Next NonStop Server for Java 5.
Title Page | 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 Profilin
Title Page | Contents | Glossary | Prev Index /ABCDEFGHIJKLMNOPQRSTUVWXYZ Special Characters /usr/tandem/java symbolic link _RLD_LIB_PATH environment variable A Abbreviations used in this document Abstract Window Toolkit (AWT) Additional files in NonStop Server for Java 5.
migration C C/C++ methods, calling from Java C++ compiler options CLASSPATH environment variable ENV serverclass attribute Compiler C++ Java HotSpot server javac tool Java HotSpot compiler (C3) Compiling Java source 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 Child Process Using the Dnsk.java.
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 DLLs _RLD_LIB_PATH environment variavble library path DNS (Domain Name Server) Document structure Domain Name Server (DNS) Double-precision values, converting Drivers, JDBC See JDBC drivers Dynamic-Link Libraries See DLLs Dynamic Saveabend File Creation E Enscribe API Environment variables See also _RLD_LIB_PATH, CLASSPA
Floating point C++ compiler options calling TNS floating-point functions converting 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 tun
I IEEE floating-point implementation Implementation specifics Incremental low-pause collector Installation changes in verifying Inspect debugger Inspect, Visual 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), JDK Java Abstract Window Toolkit (AWT) Java Authentication and Authorization Service (JAAS) See also migration Java based products descriptions documentation
debugging JNI code threading considerations Java Print Service (JPS) java tool command-line options deviations running a debuggee example for tuning example of use Java Transaction API (JTA) Java Transaction Service (JTS) Java virtual machine (JVM) 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 type 2 type 4 JDK
description setting setting, nonstandard location JTA (Java Transaction API) JToolkit for NonStop Servers JTS (Java Transaction Service) JVM See Java virtual machine (JVM) K Korn shell KSEG2 L Learning about Java about Open System Services about UNIX Library, native code Library files, naming Library path, DLLs using JNI Link, symbolic 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 install
Multithreaded programming thread scheduling threading considerations for Java code considerations for native code N NonStop CORBA NonStop Java Transaction API NonStop Server for Java Directory contents of structure of NonStop Server for Java library NonStop Server for Java Message Service NonStop Servlets for Java ServerPages NonStop SQL databases accessing with JDBC drivers storing procedures NonStop SQL/MX accessing with JDBC drivers stored procedure in Java NonStop Tuxedo, Jolt client Notation conventio
Pathsend API for Java Pathway API for Java Pathway serverclass Performance, application Permanent generation Prerequisites Print service Priority, threads Process name, designating Profiling using HPjmeter using the HPROF profiler agent running -Xeprof Java Profiler 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 con
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 Stored Procedures in Java Stored Procedures in Java Structure of NonStop Server for Java directory of this document Swap files Swap u
managing size Threading See Multithreaded programming TMF (Transaction Management Facility) and JTA transaction jacket routines TNS floating point range in value calling functions TNS/E systems migrating applications to TNS/R systems Toolkit See JToolkit for NonStop Servers See also JoltBeans toolkit Total Information Manager (TIM) See Technical Documentation Tracing See TMF (Transaction Management Facility) Transactions concurrent Tuning application performance garbage collection JVM tools for related guid
Verifying installation Visual Inspect Virtual Machine See Java virtual machine (JVM) vproc command C runtime heap manager java version W whence command -Wversion2 C++ dialect option compiling migration -Wversion3 C++ dialect option compiling migration X -Xeprof -Xverbosegc Y Young generation description heap tuning managing size /ABCDEFGHIJKLMNOPQRSTUVWXYZ Title Page | Contents | Glossary | Prev NonStop Server for Java 5.1 Programmer's Reference (544819-004) © 2010 Hewlett-Packard Development Company L.