Ir ao conteúdo
  • Cadastre-se

Exercicio paralelismo


Luizzsb

Posts recomendados

Olá , estou cursando analise e desenvolvimento de sistemas  , e estou com alguns problemas em C , pois não aprendi nada ainda , preciso de ajuda na seguinte questão:

1. Receba um número: $./fork Dica: argv[1]

2. Crie uma função para percorrer um conjunto de números aleatórios de 0 a 100.000, e pare a execução quando encontrar o número indicado em linha de comando; Dica: rand() % 100.000;

3. Iniciar 3 processos filhos – cada processo filho deverá chamar essa função, e o primeiro processo que encontrar o número solicitado irá retornar ao processo pai uma mensagem dizendo que o número foi encontrado e pode encerrar a procura. Dica: Utilizar um PIPE para realizar a comunicação entre processos pipe(fd) >> write >> read

 

Fiz o seguinte :

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <time.h>
void main () {
    int numero,aleatorio;
    pid_t filho;
    pid_t filho1;
    
    printf("Digite um numero:");
    scanf("%d",&numero);
    
    
    if (fork() == 0) {
    printf("Sou o filho,%d\n",getpid());
    }else{
        if (fork() ==0){
            printf("Sou o filho,%d\n",getpid());
        }else{
            if (fork() ==0){
            printf("Sou o filho,%d\n",getpid());
        }else{
            printf("Sou o pai%d\n",getpid());
        }
        }
        
    }
}

E não sair disso ( os filhos procurarem juntos  o numero digitado e assim que achar  o processo para, alguem pode me ajudar?

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...