HP-UX Reference (11i v2 03/08) - 5 Miscellaneous Topics, 7 Device (Special) Files, 9 General Information, Index (vol 9)

a
Aries(5) Aries(5)
(Itanium(R)-Based Processor Family Only)
found by Aries, or, if .ariesrc file is found but
-fast_trans is not found in that file, then Aries uses
the old translator as the default.
3. Warning
Due to the beta-nature of this translator, the users need to be aware that an element of risk is involved in
deploying the beta translator for mission-critical applications. However, we encourage that this new
translator be used more and more in order for it to become more robust, so that it soon attains the same
levels of reliability as the existing translator.
4. Performance of beta translator
Based on the measurements performed until this release, the beta translator has been found, on an aver-
age, to be 20% faster than the existing translator, with regards to the translation time. However, how
this improvement in the translation time reflects in the emulated application’s overall performance is a
variable factor. It has been observed in the lab that an overall performance gain of 20% on an average
can be expected in applications that contain an average mix of compute-intensive and user-intensive
actions. More precise performance measurements of the beta translator are being carried out.
Aries Supported Applications
Aries supports emulation of all HP-UX PA-RISC applications. This means, all the HP-UX Inter Process
Communication mechanisms such as semaphores, shared memory, sockets, etc. are supported. The
signal/exception behavior of a PA-RISC/HP-UX program is supported under Aries. All inter process com-
munications between an emulated PA program and a native-running Itanium-based program is sup-
ported. There is only a very small subset of the PA-RISC application domain that is not supported under
Aries. To ascertain whether a given application will run correctly under Aries or not, please determine if
the application falls into one of the Aries limitations listed under section Aries Limitations .
Aries Limitations
Aries supports emulation of all HP-UX PA-RISC applications, with the following limitations/exceptions:
Aries does not support PA programs that load Itanium-based shared libraries. In other words, mixing
PA binaries with Itanium-based shared libraries is not supported. Aries is meant only for pure PA
binaries that is, binaries that are either statically or dynamically linked with PA libraries only.
However, any sort of inter process communication between a native Itanium-based program and an
emulated PA program is supported.
The version of Aries that ships with HP-UX 11i Version 2.0 supports HP-UX PA-RISC applications
that run on HP-UX 11i V1.6 and below. Aries does not support applications compiled on HP-UX ver-
sion 8.x or earlier. However such applications should work fine if they run on a contemporary version
of HP-UX (that is, HP-UX 11i V1.6 and earlier).
Aries does not support privileged PA-RISC instructions. Hence, device drivers and loadable kernel
modules are not supported.
Aries does not guarantee correct emulation of PA applications which make assumptions about "time
taken to execute certain pieces of application code and/or system calls". Such programs are theoreti-
cally un-synchronized programs and hence need to be corrected with proper synchronization tech-
niques using mutexes, semaphores, etc. Such un-synchronized applications are found to be very rare
in practice.
Aries does not support applications that use the
ptrace() or profil() system calls. However,
Aries supports debugging of emulated application using PA gdb. See section PA GDB Support for
additional information on this. This limitation might affect debugger programs, which are normally
not portable anyways.
Aries consumes a small amount of an application’s virtual memory address space. Therefore Aries
does not support applications that are nearly or completely maxed out on their virtual address space
usage. Such applications, in practice, have been found to be extremely rare.
Aries supports both
fork(), and vfork() system calls. However, Aries does not support applica-
tions that rely on differences between fork() and vfork(). However, most applications that use
vfork() system call do use it with a purpose which is well known to the programmer. It is an
extremely rare condition that a standard application would have any such reliance on the differences
between fork() and vfork() calls. See vfork(2) and fork(2) for details.
When an emulated program makes any system call that returns the processor-related information,
then under emulation Aries returns information pertinent to a PA-RISC 2.0 processor even as the
emulated application runs on an Itanium-based machine. For instance, a call made to sysconf(2), with
_SC_CPU_VERSION, will return CPU_PA_RISC2_0. This is an Aries policy that an emulated
Section 542 Hewlett-Packard Company 3 HP-UX 11i Version 2: August 2003