Exercícios - Programação Concorrente em Linux 1 - Crie um programa formado por três processos. O processo inicial deve criar dois processos filhos, que devem imprimir na tela o seu PID e o PID do seu pai. O processo pai deve aguardar o término dos filhos, retornando seu PID, o PID dos filhos e o valor de retorno de cada um (um filho deve retornar 1 e o outro 2). 2 - Crie um programa que cria um processo filho, chamando o comando ls. O comando encontra-se no diretório /bin. 3 - Crie um programa que que efetua as 4 operações básicas. O programa deve solicitar que o usuário selecione a operação desejada (soma, subtração, multiplicação e divisão). Em seguida, o programa solicita que o usuário digite dois valores numéricos a serem operados. Em seguida, o processo relacionado ao programa deve criar um processo filho, responsável por realizar a operação e mostrar o resultado. O processo pai deve esperar o filho realizar a operação e mostrar o dado. O programa deve ficar em um laço, solicitando novas operações e só deve terminar se o usuário digitar um valor de saída. Desafio: Faça um programa que simule um shell (interpretador de comandos). O programa deve executar comandos que forem passados pelo usuário. Se estiver interessado, faça com que o programa também receba os parâmetros dos comandos (Ex: ls -la /etc).