Los procesos

Un proceso define una instancia de un programa en ejecución y su entorno. Al igual que con los archivos, aquí sólo mencionamos las diferencias más importantes. Para una discusión más profunda sobre este tema consulte el Manual de Referencia.

La diferencia más importante está, una vez más, directamente relacionada al concepto de usuario: cada proceso se ejecuta con los derechos del usuario que lo inició. Internamente, el sistema identifica a los procesos de forma unívoca con un número. Este número se conoce como el PID (Process ID, ID del Proceso) A partir de este PID, el sistema sabe, entre otras cosas, quien (es decir, que usuario) ha lanzado el proceso. Entonces, simplemente tiene que verificar la “validez” del proceso. Por lo tanto, si volvemos al ejemplo del archivo un_archivo mencionado anteriormente, un proceso lanzado por el usuario pedro sólo podrá abrir este archivo en modo de sólo lectura, pero no en el modo de lectura-escritura, ya que los derechos asociados al archivo lo prohíben. Una vez más, root es la excepción a la regla...

Gracias a esto, GNU/Linux es virtualmente inmune a los virus. Un virus necesita infectar archivos ejecutables para poder operar. Como usuario regular, Usted no tiene derecho de escritura alguno sobre los archivos vulnerables del sistema, razón por la cual el riesgo se reduce notablemente. Agregue a esto el hecho que, en general, los virus son muy raros en el mundo de UNIX. Hay menos de una docena de virus conocidos para Linux, y eran completamente inofensivos cuando los iniciaba un usuario no privilegiado. Sólo un usuario puede dañar un sistema activando estos virus y es, una vez más, root.

Sin embargo, sí existe software anti-virus para GNU/Linux, pero mayormente para los archivos de DOS/Windows. La razón de esto es que, cada vez más seguido, se ven servidores de archivos GNU/Linux sirviendo a las máquinas Windows con la ayuda del paquete de software Samba .

Linux hace que sea fácil controlar a los procesos. Una forma de controlarlos es por medio de señales. Con las señales Usted puede, por ejemplo, suspender un proceso o terminarlo. Simplemente, debe enviar la señal correspondiente al proceso y ya está. A excepción de root, UNIX no le permitirá enviar señales a procesos que inició otro usuario. En Capítulo 6. Control de procesos aprenderá como obtener el PID de un proceso y enviarle señales.