From 8ca8d75e6dd967392e1b17ab89488a16fa03102a Mon Sep 17 00:00:00 2001 From: Eric Date: Fri, 29 Sep 2023 19:15:14 +0200 Subject: [PATCH] Updload EjercicioFork 3 --- Fork.c | 26 ++++++++++++++++++++++++++ README.md | 9 +++++++++ 2 files changed, 35 insertions(+) create mode 100644 Fork.c create mode 100644 README.md diff --git a/Fork.c b/Fork.c new file mode 100644 index 0000000..67036b1 --- /dev/null +++ b/Fork.c @@ -0,0 +1,26 @@ +#include +#include +#include +#include +#include +void main(void) { + pid_t id_actual, id_padre, pid; + pid = fork(); + if (pid == -1) { // Hubo error + printf("Hubo un problema de impotencia al crear el hijo"); + exit(-1); } + // Si todo va bien y se crea el hijo tenemos que hacer + // que el programa ejecute un código con distinto para cada + // proceso + if (pid == 0) { // Nos encontramos en el hijo + printf ("Soy el proceso hijo\n\t"); + printf(" Mi PID es %d, y el mi papa %d\n",getpid(),getppid()); + } else { // Nos encontramos en el padre + id_actual = wait(NULL); + printf("Yo soy el padre de la criatura:\n\t"); + printf("Mi PID es %d, el de mi padre (abuelo de la criatura) es %d.\n\t", + getpid(),getppid()); + printf("Mi hijo si es de verdad hijo mio deberia tener el PID %d.\n",pid); + } + exit(0); +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..d897c48 --- /dev/null +++ b/README.md @@ -0,0 +1,9 @@ +# Ejercicio Fork 3 +~~~ +Soy el proceso hijo + Mi PID es 75132, y el mi papa 75131 +Yo soy el padre de la criatura: + Mi PID es 75131, el de mi padre (abuelo de la criatura) es 45463. + Mi hijo si es de verdad hijo mio deberia tener el PID 75132. + +~~~