Reliable signals in native AIX
ITEM: RTA000070826
My customer uses BSD ( define and linking with libbsd.a ) to achieve
reliable signal handling at blocking. How is native AIX implemented
( without BSD)??? Are the signals then reliably queued at blocking ????
POSIX standard only states that AT LEAST ONE signal should be
delivered after unblocking. What happens to my customer if he drops
BSD linking ?? Where is this documented ?? It can of course easily
be tested but I need a firm reference before recommending either
to the customer.
ANSWER
The standard AIX implementation uses 'sigprocmask' subroutine to block
signals & 'sigaction' subroutine to define program action upon receiving
a signal. AIX supports an extensive set of process subroutines which
are documented in the InfoExplorer "List of Process Subroutines". Some
of the routines are designed for signal control.
If your customer drops BSD linking, he may have to change his code to use
subroutines supported in libc.a instead of libbsd.a. I did notice that
some of the BSD signal subroutines are included in libc.a. To determine
if your customer's routines fall in this category, you should refer to
InfoExplorer.
On the issue of queuing reliably at blocking, I am not sure exactly what
you mean by this. Are you asking, "Is there a way to process a blocked
signal once the block is lifted?". If you could be more descriptive in
what you are trying to accomplish, it will allow me to more accurately
address you question. Some additional information that would be helpful:
1) What level of AIX are you running?
2) What compiler and what version of that compiler are you using? I
have assumed in my response that you are using C. Is this correct?
3) What function of BSD are you looking for in standard AIX in regards to
signal handling? If you could describe how you are handling signals
in BSD and how you expect it to work, I may be able to determine the
analog to this in AIX.
4) If you could provide a short segment of example code that illustrate
the function you are trying to implement, it may also be helpful.
Include all necessary instructions for me to recreate the situation.
5) Please feel free to provide any addition information. I am trying
to understand the question so I can recreate & test the functionality
you desire. The more specific information you provide, the more
precisely I can answer your question.
Note: our group provides HOWTO support. We do not have the resources
to provide extensive programming support. We do not provide assistance in
areas of program design or debugging. What I can provide is information
on how AIX and subroutines in AIX work.
S e a r c h - k e y w o r d s:
BSD SIGNAL HANDLING LIBBSD.A LINKING BLOCKING
WWQA: ITEM: RTA000070826 ITEM: RTA000070826
Dated: 05/1996 Category: ITSAI6000GE
This HTML file was generated 2000/11/30~13:34:02
Comments or suggestions?
Contact us