Alguns anos atrás, um colega de trabalho encontrou uma solução elegante para um programa de vigilância. O programa foi executado no Windows e usou objetos de eventos do Windows para monitorar os identificadores de processo (PIDs) de vários aplicativos. Se qualquer um dos processos terminasse inesperadamente, seu identificador de processo não existiria mais e seu cão de guarda seria imediatamente sinalizado. O cão de guarda tomaria uma ação apropriada para "curar" o sistema.
Minha pergunta é: como você implementaria esse cão de guarda no Linux? Existe uma maneira de um único programa monitorar os PIDs de muitos outros?