Jump to content
Sign in to follow this  
jncevcosta

Problema com pipes

Recommended Posts

jncevcosta

Boa tarde,

venho por este meio pedir a vossa ajuda. Tenho um trabalho para fazer mas estou com uns problemazinhos.

O trabalho a fazer é o seguinte:

Crie um programa de nome matmult para multiplicar duas matrizes de inteiros. O programa deverá aceitar como argumentos o nome dos ficheiros contendo a descrição das matrizes e deverá enviar o resultado da multiplicação para o stdout. A execução do programa deverá ser algo da forma matmult matrixA.dat matrixB.dat, em que os ficheiros com a descrição das matrizes seguem o formato da etapa anterior.

Para calcular a matriz resultado, o programa matmult deverá criar tantos processos filho quantas as linhas da 1ª matriz. Por seu lado, cada processo filho deverá executar o programa vecmult da etapa anterior de modo a calcular uma das linhas da matriz resultado. O programa vecmult deverá ser executado através da utilização de uma das funções da família exec(), enquanto que a comunicação entre o programa matmult e os diversos filhos vecmult deverá ser conseguido por utilização de pipes.

Como simplicação evite a detecção de erros e considere que os dados relativos às matrizes são sempre válidos e compatíveis (neste caso o número de colunas da 1ª matriz deverá ser igual ao número de linhas da 2ª matriz). A leitura das linhas da 1ª matriz poderá ser feita utilizando a função getline().

Esta é a parte que eu não consigo fazer...

Já procurei na net como se trabalha com pipes e não consigo perceber. Já perguntei ao prof e ele não me soube explicar bem, ficando ainda um pouco mais confuso.

Não pretendo a resolução do problema em si, mas apenas umas luzes de como funcionam as pipes, como trabalhar com elas.

Com os melhores cumprimentos

José Costa

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.