Operaciones Sobre Procesos
Enviado por riverapatriciam • 8 de Abril de 2013 • 740 Palabras (3 Páginas) • 465 Visitas
Operaciones sobre Procesos
Los procesos en el sistema pueden ejecutarse concurrentemente y deben ser creados y borrados dinámicamente. Así el sistema de operación debe crear un mecanismo para la creación y terminación de procesos.
Creación de procesos
Cuando un nuevo proceso se agrega a los que actualmente están siendo administrados, el sistema de operación construye las estructuras de datos que son usadas para administrar los procesos (PCB) y le asigna espacio de direcciones. Estas acciones constituyen la creación de un nuevo proceso.
Hay 4 eventos comunes que conducen a la creación de procesos:
• En un ambiente batch, un proceso es creado en respuesta al sometimiento a ejecución de un trabajo (job). El sistema de operación tomará el próximo trabajo a ser ejecutado y creará el respectivo proceso.
• En un ambiente interactivo, un proceso es creado cuando un nuevo usuario entra al sistema (log on), se crea un proceso shell que espera las órdenes del usuario. La creación de este proceso es responsabilidad del sistema de operación.
• El sistema de operación puede crear un proceso para que realice una función en respuesta a una petición de un programa usuario, sin que el usuario tenga que esperar. Por ejemplo, si un usuario requiere que se imprima un archivo, el SO puede crear un proceso que maneje esta impresión, mientras que el proceso que realizó la petición puede continuar independientemente del tiempo requerido para completar la tarea de impresión.
• Creación de procesos hijos por parte de procesos usuarios ya existentes: para propósitos de modularidad o para explotar paralelismo, un programa usuario puede crear un conjunto de procesos hijos. El proceso que crea se llama proceso padre.
Cuando un proceso crea un hijo hay dos posibilidades en términos de ejecución:
o El proceso padre continua ejecutándose concurrentemente con sus hijos
o El proceso padre espera a que alguno o todos los hijos terminen.
También hay dos posibilidades en términos de espacio de direcciones del nuevo proceso:
o El proceso hijo es un duplicado del proceso padre (Unix).
o El proceso hijo tiene su propio programa cargado (DEC VMS).
Así mismo, referente a los recursos, en algunos sistemas los recursos del padre son compartidos con sus hijos y en otros sistemas, como UNIX, el sistema le otorga recursos nuevos e independientes a los procesos hijos. La creación de procesos hijos en UNIX, se realiza a través de la llamada al sistema fork().
En el proceso de creación de procesos se genera una jerarquía de procesos padres e hijos.
Terminación de procesos
Implica la liberación de los recursos que este proceso estaba usando.
Un proceso puede terminar por las siguientes razones:
o En forma normal: exit(), Halt(): llamadas al sistema que desasigna los recursos
...