Czasami jestem trochę zdezorientowany wszystkimi sygnałami, które może odbierać proces. Jak rozumiem, proces ma domyślny moduł obsługi ( rozmieszczenie sygnałów ) dla każdego z tych sygnałów, ale może zapewnić własny moduł obsługi przez wywołanie sigaction().
Oto moje pytanie: co powoduje wysłanie każdego z sygnałów? Zdaję sobie sprawę, że za pomocą -sparametru można ręcznie wysyłać sygnały do uruchomionych procesów kill, ale jakie są naturalne okoliczności, w których sygnały te są wysyłane? Na przykład kiedy SIGINTzostanie wysłany?
Czy istnieją również ograniczenia dotyczące obsługiwanych sygnałów? Czy SIGSEGVmożna przetwarzać nawet sygnały i zwracać kontrolę do aplikacji?