Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Про сигналы не сказано самого важного: signal-safety(7). В примере хрестоматийная ошибка: printf() и puts() не являются async-signal-safe, не гарантируется безопасность их вызова из обработчика сигнала. В современных программах хорошо и правильно пользоваться signalfd(2) и мультиплексором, чтобы обрабатывать сигнал без прерывания потока и без забот о том, что можно вызывать.
Руководство по межпроцессному взаимодействию (IPC) в Linux — Часть 3