Isso deve ser possível (pelo menos em muitos casos) se houver uma conexão permanente. Então você pode verificar /proc/PID/fd
para sockets e FIFOs (mais difícil se forem usados arquivos regulares) e encontrar os processos que pertencem a eles.
Mas eu não bloquearia completamente os outros processos; isso parece perigoso. Isso pode causar deadlocks se você cometer um erro (e pode causar outros problemas).
Sugiro descarregar a CPU e a prioridade de E / S de todos os processos, adaptá-los ( renice
, ionice
) e restaurá-los depois. Isso pode custar ao processo principal 10% de desempenho, mas você está no lado seguro.