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.