so_procplani
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
so_procplani [2019/08/25 23:47] – mariano | so_procplani [2019/08/26 00:02] (actual) – mariano | ||
---|---|---|---|
Línea 40: | Línea 40: | ||
Además de los diversos recursos físicos y lógicos que un proceso obtiene en el momento de su creación, el proceso padre puede pasar datos de inicialización (entrada) al proceso hijo. Por ejemplo. considere un proceso cuya función sea mostrar los contenidos de un archivo, por ejemplo img.jpg, en la pantalla de un terminal. Al crearse, obtendrá como entrada de su proceso padre el nombre del archivo img.jpg y empleará dicho nombre de archivo, lo abrirá y mostrará el contenido. También puede recibir el nombre del dispositivo de salida. Algunos sistemas operativo s pasan recursos a los procesos hijo. En un sistema así, el proceso nuevo puede obtener como entrada dos archivos abiertos, img.jpg y el dispositivo terminal, y simplemente transferir los datos entre ellos. | Además de los diversos recursos físicos y lógicos que un proceso obtiene en el momento de su creación, el proceso padre puede pasar datos de inicialización (entrada) al proceso hijo. Por ejemplo. considere un proceso cuya función sea mostrar los contenidos de un archivo, por ejemplo img.jpg, en la pantalla de un terminal. Al crearse, obtendrá como entrada de su proceso padre el nombre del archivo img.jpg y empleará dicho nombre de archivo, lo abrirá y mostrará el contenido. También puede recibir el nombre del dispositivo de salida. Algunos sistemas operativo s pasan recursos a los procesos hijo. En un sistema así, el proceso nuevo puede obtener como entrada dos archivos abiertos, img.jpg y el dispositivo terminal, y simplemente transferir los datos entre ellos. | ||
+ | |||
+ | Cuando un proceso crea otro proceso nuevo, existen dos posibilidades en términos de ejecución: | ||
+ | - El padre continúa ejecutándose concurrentemente con su hijo. | ||
+ | - El padre espera hasta que alguno o todos los hijos han terminado de ejecutarse. | ||
+ | |||
+ | También existen dos posibilidades en función del espacio de direcciones del nuevo proceso: | ||
+ | |||
+ | - El proceso hijo es un duplicado del proceso padre (usa el mismo programa y los mismos datos que el padre). | ||
+ | - El proceso hijo carga un nuevo programa. | ||
+ | |||
+ | Para ilustrar estas diferencias, | ||
+ | |||
+ | Normalmente, | ||
+ | |||
+ | ==== Terminación de procesos ==== | ||
+ | |||
+ | Un proceso termina cuando ejecuta su última instrucción y pide al sistema operativo que lo elimine usando la llamada al sistema exit ( ) . En este momento, el proceso puede devolver un valor de estado (normalmente, | ||
+ | |||
+ | La terminación puede producirse también en otras circunstancias. Un proceso puede causar la terminación de otro proceso a través de la adecuada llamada al sistema (por ejemplo, TerminateProcess en Win32). Normalmente, | ||
+ | |||
+ | Un padre puede terminar la ejecución de uno de sus hijos por diversas razones, como por ejemplo, las siguientes: | ||
+ | |||
+ | * El proceso hijo ha excedido el uso de algunos de los recursos que se le han asignado. Para determinar si tal cosa ha ocurrido, el padre debe disponer de un mecanismo para inspeccionar el estado de sus hijos. | ||
+ | * La tarea asignada al proceso hijo ya no es necesaria. | ||
+ | * El padre abandona el sistema, y el sistema operativo no permite que un proceso hijo continúe si su padre ya ha terminado. | ||
+ | |||
+ | Algunos sistemas, incluyendo VMS, no permiten que un hijo siga existiendo si su proceso padre se ha completado. En tales sistemas, si un proceso termina (sea normal o anormalmente), | ||
+ | |||
+ | Para ilustrar la ejecución y terminación de procesos, considere que, en UNIX, podemos terminar un proceso usando la llamada al sistema exit ( ); su proceso padre puede esperar a la terminación del proceso hijo usando la llamada al sistema wait ( ). La llamada al sistema wait ( ) devuelve el identificador de un proceso hijo completado, con el fin de que el padre puede saber cuál de sus muchos hijos ha terminado. Sin embargo, si el proceso padre se ha completado, a todos sus procesos hijo se les asigna el proceso init como su nuevo padre. Por tanto, los hijos todavía tienen un padre al que proporcionar su estado y sus estadísticas de ejecución. | ||
×
iphelper toolbox
you see this when javscript or css is not working correct
Untested
so_procplani.1566776820.txt.gz · Última modificación: 2019/08/25 23:47 por mariano