ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Programacion de Sistemas C++


Enviado por   •  3 de Agosto de 2021  •  Tareas  •  2.020 Palabras (9 Páginas)  •  242 Visitas

Página 1 de 9

[pic 1]

FACULTAD DE INGENIERÍA, PRODUCCIÓN Y SERVICIOS

ESCUELA DE INGENIERÍA DE SISTEMAS

PROGRAMACIÓN DE SISTEMAS

Docente: RONI GUILLERMO APAZA ACEITUNO

Estudiante: SANTOS ADILSON ESTEBA CRUZ        

Laboratorio: B

2021

EJERCICIOS PROPUESTOS

EJERCICIO 1

Crear un programa en C++ donde utilizando una llamada a sistema fork() se puedan crear tres hijos.

Código

//codigo01.cpp

#include <stdio.h>

#include <stdlib.h>

#include <unistd.h>

int main() {

        int pid1, pid2, pid3;

        //Inicio del proceso hijo 1

        pid1 = fork();

        if(pid1 == 0) {

                sleep(2);

                //Mensaje del hijo 1

                printf("hijo[1] -> pid = %d - ppid = %d\n",getpid(),getppid());

        }

        else {

                //Inicio del proceso hijo 2

                pid2 = fork();

                if(pid2 == 0) {

                        sleep(1);

                        //Mensaje del hijo 2

                        printf("hijo[2] -> pid = %d - ppid = %d\n",getpid(),getppid());

                }

                else {

                        //Inicio del proceso hijo 3

                        pid3 = fork();

                        if(pid3 == 0) {

                                //Mensaje del hijo 3

                                printf("hijo[3] -> pid = %d - ppid = %d\n",getpid(),getppid());

                        }

                        else {

                                sleep(3);

                                //Mensaje del padre

                                printf("padre -> pid = %d\n",getpid());

                        }

                }

        }

        return 0;

}

 [pic 2]

EJERCICIO 2

Crear un programa en C++ donde utilizando la biblioteca csignal se pueda imprimir un mensaje de “hola” utilizando la señal SIGABRT

Código

//codigo02.cpp

#include <stdio.h>

#include <stdlib.h>

#include <unistd.h>

#include <signal.h>

//Funcion para manejar la señal

void signalHandler(int signum) {

        printf("Recibido (%d)\n",signum);

        

        //Mostrar el mensaje

        printf("hola\n");

        exit(signum);

}

//Funcion principal

int main() {

        //Declaracion de la señal

        signal(SIGABRT, signalHandler);

        printf("pid = %d\n",getpid());

        //Bucle sin fin

        while(1) {

                printf("Esperando...\n");

                sleep(3);

        }

        return 0;

}

[pic 3]

EJERCICIO 3

Modifica el código10.c para que mediante la utilización de la función “sleep()”, la frecuencia a la

que el proceso hijo escribe en los ficheros sea menor que la del proceso padre. Es decir que realice menos escrituras por unidad de tiempo.

...

Descargar como (para miembros actualizados)  txt (5.3 Kb)   pdf (282.2 Kb)   docx (256.6 Kb)  
Leer 8 páginas más »
Disponible sólo en Clubensayos.com