Está en la página 1de 5

Introducción

El objetivo de los siguientes ejercicios es adecuar el código proporcionado para ver


el resultado, para este ejercicio se usó una distribución de Ubuntu versión 18.04.4 a
64 bits, posterior a esto se procedió a la instalación del compilador VS para poder
compilar y ejecutar código, edición de código.

Este módulo explicamos cómo se integra el código y el uso de Fork. Describimos


cómo utilizar las herramientas de programación y proporcionamos suficiente
actividad práctica para que podamos crear nuestra primera aplicación.
El uso de FORK

Descripción del Ejercicio.

En este ejercicio aprendimos sobre la función Fork y cómo implementarla, creamos


un nuevo proceso (hijo), copia casi exacta del proceso generador (padre).

Cuando FORK se ejecuta con éxito devuelve:

En la variable PID guardaremos el resultado de FORK. Si es 0, estamos en el proceso


hijo, si es diferente a cero, estamos en el proceso padre.

Explicación de la Implementación (procesos, creación, gestión y concurrencia).

Esta función genera un duplicado del proceso actual (hijo), el duplicado los valores
de todas las variables, ficheros y la misma estructura. FORK retorna al proceso padre
el identificador del proceso hijo y a su vez regresa un cero al proceso hijo.

Los procesos hijo pueden a su vez generar nuevos hijos, creando una jerarquía de
procesos. Esta jerarquía recibe el nombre de grupo de procesos. Todos los
miembros del grupo comparten los ficheros que estaban abiertos cuando el
proceso padre los creo. Comparten STDIN, STDOUT y STDERR.

Las siglas PID, del inglés Process IDentifier, son utilizadas para referirnos al
identificador del proceso.

La función FORK genera dos ejecuciones concurrentes en un programa, es decir,


son procesados al mismo tiempo no hace falta haber ejecutado otro para ejecutar
uno de ellos.
CONCLUSIÓN

En el sistema Linux multitarea (sistema operativo de subprocesos múltiples) que ya


conocemos, se pueden realizar diferentes acciones simultáneamente, cada
acción es un proceso que consta de uno o más subprocesos, y todos los
subprocesos comparten memoria de trabajo e información de planificación. Cada
subproceso consta de instrucciones y estado de ejecución. Cuando ejecutamos
un comando en el shell, sus instrucciones se copian en una ubicación en la RAM
del sistema para su ejecución. Cuando las instrucciones completan sus tareas, los
programas se eliminan de la memoria del sistema, dejándolos libres para que se
puedan ejecutar más programas al mismo tiempo. Por lo tanto, cada uno de estos
programas es un proceso. Los procesos son creados y destruidos por el sistema
operativo, pero lo hace a pedido de otros procesos.

También podría gustarte