ASAP 1.1 Hybrid Manual

HP NonStop ASAP Hybrid Manual 529729-004
Page 4-1
4. The ASAP Hybrid for Linux
API
The ASAP Hybrid for Linux API Library allows Linux applications to interface to the
ASAP subsystem. Applications utilize the API to register domains and update
metric counters in shared memory. No other interaction with ASAP is required.
The ASAP Hybrid for Linux server extracts domain and counter data from shared
memory and passes it to NonStop ASAP where it is processed along with all other
ASAP data.
Key features of the ASAP Hybrid for Linux API include:
Nonblocking API
Most API calls are nonblocking, so application performance and
responsiveness are not affected by instrumenting for ASAP.
Low overhead
Shared memory is used for storing all domain information, and the API calls
access this memory directly. Virtually no overhead is involved in using the
ASAP API.
Support for multithreaded or single-threaded applications
Thread-safe and non-thread-safe variants of each API procedure (except
asap_register) are provided. The thread-safe versions permit different threads
of the same process to share ASAP counter space, and the non-thread-safe
versions allow single-threaded applications to call ASAP API procedures
without incurring any incremental overhead associated with support for
multiple threads.
Built-in recoverability
The ASAP Hybrid for Linux subsystem retains all domain and metric data if an
application stops or fails prior to removing a domain. This capability allows
the application to restart and re-register that domain without losing any
accumulated metric data.
Support for x86 and AMD64 platforms
Both 32-bit and 64-bit versions of the API library are provided, allowing you
to build either 32-bit applications for the x86 platform or 64-bit applications