Powered By Blogger

jueves, 23 de enero de 2014

Investiga los tipos de señales del comando KILL



1.      Investiga el uso de las señales 9, 15, 18,19 y 20 de kill.
*       9. SIGKILL-Destrucción inmediata del proceso. Tratamiento: exit. No reprogramable, 
no ignorable.
*      15. SIGTERM - Terminación. Tratamiento por defecto:exit. Reprogramable.
*      18. SIGCONT- Continúa si estaba parado.Tratamiento por defecto: continuar. Reprogramable.
*      19. SIGSTOP- Detiene el proceso. Se genera al pulsar "^z" durante la ejecución. No reprogramable, no ignorable.
*      20. SIGTSTP- Parada de terminal.


2.      Indica claramente la diferencia entre la 15 y la 9.

*      9. SIGKILL: Esta señal provoca un apagado forzoso del proceso. A diferencia de las anteriores, no puede ser ignorada ni manejada por un controlador de señales. Es la manera más segura de matar un programa si no podemos hacerlo de las formas anteriores.
·         Los procesos zombies 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.


*      15. SIGTERM: Señal que se envía el proceso para comunicarle un apagado “amable” (cerrando conexiones, ficheros y limpiando sus propios búfer). También puede ser controlada o ignorada por un manejador de señales del proceso. Es la señala que mandan por defecto: kill y killall desde la terminal.Es la señal por defecto.


3.      ¿Qué señal se lanza por defecto si no se especifica una?

·         La señal por defecto es SIGTERM

4. Pon un ejemplo claro de uso para las señales 9,15,18,19 y 20



 (9) SIGKILL: Esta señal termina el proceso que la recibe de forma inmediata. Empleela sólo para detener procesos que no terminan con la señal SIGTERM.
*      Usted observa que el proceso aún se está ejecutando. No ha finalizado. Para finalizar este proceso, y cualquier proceso que se resista a ser finalizado, debe enviar una nueva señal denominada SIGKILL. La señal por defecto es SIGTERM.
*      # kill -SIGKILL 9790
*      # ps -aef|grep sqlplus|grep oracle

(15) SIGTERM: Esta señal solicita la terminación del proceso que la recibe.
*      En ocasiones usted deseará terminar algún proceso, por ejemplo porque deja de responder o tarda demasiado en completarse; para hacerlo puede emplear el programa kill para enviarle una señal de terminación. Una señal es como un "llamado de atención" que se hace a un proceso en situaciones excepcionales (por ejemplo errores), pueden ser producidas por otros procesos, por el usuario o por el sistema operativo y en la mayoría de los casos conducen a la terminación del proceso que recibe la señal. Hay diversos tipos de señales, cada una tiene un número, un nombre que la identifica y una acción predefinida (que generalmente puede ser cambiada por el proceso). Un usuario puede enviar una señal a un proceso con el programa kill seguido de la señal que enviará y del proceso que la recibirá:kill -SIGTERM 945
*      Este ejemplo envía la señal SIGTERM al proceso con identificación 945 (en vez de SIGTERM 
pudo haberse usado 15 que es el número que corresponde a esa señal). 
 
(18) SIGCONT: Reanuda un proceso suspendido previamente por la señal SIGTSTP.
*    # Kill –SIGCONT 18 5981

 (19) SIGSTOP: Para el proceso.
*      Algunas veces usted puede querer simplemente detener el proceso en vez de finalizarlo. Puedo utilizar la opción -SIGSTOP con el comando kill.
*      # kill –SIGSTOP19  9790
*      # ps -aef|grep sqlplus|grep oracle

(20) SIGTSTP: La misma señal producida por Control-z, su efecto es suspender la ejecución de un proceso ---para reanudarla después.
*      # Kill –SIGTSP 20 5981