Sobes.tech
Junior

¿Cuál es la diferencia entre las señales SIGTERM y SIGKILL?

sobes.tech AI

Respuesta de la IA

SIGTERM — es una señal para la terminación educada del proceso. Informa al proceso que debe finalizar, permitiendo realizar tareas de limpieza (por ejemplo, guardar datos, cerrar conexiones). El proceso puede ignorar esta señal.

SIGKILL — es una señal para terminar forzosamente el proceso. Detiene inmediatamente el proceso, sin darle la oportunidad de realizar ninguna limpieza. Esta señal no puede ser capturada ni ignorada por el proceso.

Diferencias principales:

Característica SIGTERM SIGKILL
Propósito Finalización educada Finalización forzada
Manejo Puede ser capturada e ignorada No puede ser capturada ni ignorada
Limpieza de recursos El proceso puede realizar limpieza El proceso no realiza limpieza

Ejemplo de envío de señales:

# Enviar SIGTERM al proceso con PID 1234
kill 1234

# Enviar SIGKILL al proceso con PID 1234
kill -9 1234

En escenarios de gestión de procesos (por ejemplo, en sistemas de inicialización, orquestadores), generalmente primero se envía SIGTERM, y si el proceso no termina en el tiempo asignado, se envía SIGKILL.