pTAL Reference Manual (G06.24+, H06.09+, J06.03+)

Because a process can run for a long time, the tracing facility samples the process (that is, checks
its exception data) periodically (approximately once an hour). If the process recorded an exception
since the previous sample, the tracing facility records an entry in the EMS log. If the process ends
and an exception has occurred since the last sample, the operating system produces a final Event
Management Service (EMS) event.
The EMS event includes:
The process’s exception count
Details about one misaligned-address exception, including the program address, data address,
and relevant code-file names
Sampling is short and infrequent enough to avoid flooding the EMS log, even for a continuous
process with many misaligned-address exceptions. One sample logs a maximum of 100 events,
and at most one event is logged for any process.
If misaligned-address exceptions occur in different periods of a process, the operating system
produces multiple EMS events for the same process, and these EMS events might have different
program addresses.
For more information about EMS events or the EMS log, see the EMS Manual.
Misalignment Handling
Misalignment handling is determined by the following SCF attributes, which are set system-wide
(that is, for all processors in the node) by the persons who configure the system:
MISALIGNLOG
TNSMISALIGN (applies only to programs running in TNS mode or TNS accelerated mode,
and therefore, does not apply to pTAL programs)
NATIVEATOMICMISALIGN
MISALIGNLOG enables or disables the tracing facility (see Misalignment Tracing Facility (page 66)).
NATIVEATOMICMISALIGN applies to atomic routines in programs running in TNS/R native mode;
that is, the pTAL and TAL routines whose names begin with “$ATOMIC_”
For normal, nonatomic access in TNS/R native mode, the system uses the operand’s full address
(never rounded down) to complete the operation.
For normal, nonatomic access in TNS/R native mode, the system uses the operand’s full address
(never rounded down) to complete the operation.
Table 22 (page 67) lists and describes the possible settings for NATIVEATOMICMISALIGN. Each
setting represents a different misalignment handling method. For more information about
NATIVEATOMICMISALIGN, see the SCF Reference Manual for the Kernel Subsystem.
Table 22 TNS/R Native Atomic Misalignment Handling Methods
DescriptionMethod
After rounding down a misaligned address, the system proceeds to access the address
atomically, as in G06.16 and earlier RVUs.
ROUND (default)
Instead of rounding down a misaligned address, the system considers the call to have
failed.This failure generates a SIGILL signal (signal #4). By default, this signal causes process
FAIL
termination, but the program can specify other behavior (for example, entering the debugger
or calling a specified signal-handler procedure). The signal cannot be ignored. For information
about signal handling, see the explanation of the sigaction() function in the Open System
Services System Calls Reference Manual.
The method that you choose does not apply to every misaligned address, only to those that would
have been rounded down in earlier RVUs.
Misalignment Handling 67