H-Series Application Migration Guide (H06.07+, J06.03+)

Migration Overview
H-Series Application Migration Guide429855-008
1-6
Developing TNS/R Applications on a TNS/E System
that have nearly identical functionality to the TNS/R tools. Following are some general
differences:
The TNS/E tools have different names (most of the same directives, flags, and
pragmas are supported, and some new ones are added).
All libraries are dynamic-link libraries (DLLs). Shared run-time libraries (SRLs) are
not supported. The H-series RVUs provide more comprehensive support for DLLs
than do the G-series.
All code is position-independent code (PIC), and all compilers generate PIC. PIC is
used to create DLLs and executable files.
Debugging tools have changed. Visual Inspect is still the primary native mode
application debugger, but the H-series product version is enhanced for machine
level debugging. The G-series system-level debugger, Debug, is not supported on
H-series systems. Native Inspect replaces both Debug and Inspect as the system
level and command line debugger for TNS/E native processes. Native Inspect
differs significantly from Inspect.
For additional details on these topics, see Section 2, The TNS/E Native Development
Environment.
Developing TNS/R Applications on a TNS/E System
TNS/R development tools are supported on TNS/E systems. You can compile and link
TNS/R native programs on a TNS/E system, and you can debug TNS/R native
snapshot files on a TNS/E system. However, TNS/R native object files, which consist
of RISC instructions, cannot be executed on a TNS/E system. You must transfer the
object files to a TNS/R system for execution. For details and a list of TNS/R tools
supported, see Developing TNS/R Native Programs on H-Series Systems on
page 2-17..
Summary of Migration Tasks
Following are summaries of the tasks required to migrate applications to an H-series
system.
G-Series (TNS/R) Native Mode to H-Series (TNS/E) Native Mode
In most cases, this is a simple procedure.
1. Verify that your program does not perform any privileged operations. If it does,
consult the resources described in Section 10, Where to Go for Assistance.
2. Verify that your program does not rely on the internal architecture of the TNS/R
server (primarily privileged operations and instruction-set architecture-specific
items such as the number of general registers and the size of a register save
Note. You cannot develop TNS/E native programs on a TNS/R system.