Ir al contenido

SIGKILL

De Wikipedia, la enciclopedia libre
Esta es una versión antigua de esta página, editada a las 12:50 18 jun 2020 por Dorieo (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.

En UNIX y otros sistemas compatibles POSIX, SIGKILL es la señal que se envía a un proceso para que termine inmediatamente. La constante simbólica de SIGKILL se define en la cabecera signal.h. En general se utilizan nombres simbólicos porque las señales numéricas pueden diferir de un sistema a otro, aunque en la mayoría de los casos SIGKILL se asocia con el número 9.

Etimología

SIG es un prefijo común para nombres de señales. KILL literalmente significa matar y se utiliza en jerga informática al referirse a la acción de terminar un proceso de forma inmediata.

Uso

Cuando se envía a un programa, SIGKILL provoca que se termine inmediatamente. En contraposición a SIGTERM y SIGINT, esta señal no se pueda ignorar y el proceso que la reciba no puede realizar ninguna acción adicional.

  • Los procesos zombis no se pueden matar, ya que están realmente muertos y a la espera de que su proceso padre los recoja.
  • Procesos que se encuentren bloqueados, no se matarán hasta que se levanten de nuevo.
  • El proceso init es especial: Ignora SIGKILL.
  • Como SIGKILL no permite que los procesos terminen de forma limpia, en muchos sistemas el procedimiento de apagado se produce utilizando SIGTERM antes que SIGKILL.
  • Un proceso dormido no interrumpible no puede terminar (ni liberar sus recursos) aunque reciba un SIGKILL. Esta es una de las situaciones en las que un sistema UNIX debe reiniciarse.