PDA

View Full Version : gestione processi


magikhv
21-05-2009, 18:55
Ciao ragazzi,
senza preavviso devo conseganre un programmino sulla gestione dei processi in linux per stasera e non avendo avuto modo ancora di studiare l'argomento ho paura di non farcela.Perciò vi chiede una mano:

COme lo realizzereste? Ecco la traccia:

Si realizzi un programma C che crea un figlio il quale invoca (con una primitiva della famiglia exec)
ricorsivamente lo stesso programma, purchè la profondità di ricorsione sia inferiore ad un certo parametro N.

Si suggerisce di introdurre una sorta di “contatore”, utilizzabile dai processi attraverso fork
e exec, che puo` essere ottenuto in alternativa con

1. un argomento di invocazione
2. una variabile di ambiente

e che deve essere decrementato prima di effettuare la ricorsione.
Ogni processo dovrà visualizzare a schermo messaggi informativi relativi
agli eventi significativi che lo riguardano (ad es. creazione, terminazione, valore del contatore,


grazie a tutti per l'aiuto

misterx
21-05-2009, 19:23
piccolo aiutino per metterti in pista


#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>

int main(void){
int x = fork();
if (x < 0){
perror("Errore nella fork:");
exit(1);
} else {
if (x != 0){
while(1){
sleep(1);
printf("Processo padre (Figlio: %d)\n", x);
}
} else {
while(1) {
printf("Processo figlio (%d)\n", x);
sleep(1);
}
}
}
return 0;
}

magikhv
21-05-2009, 19:40
ho difficotà a implementare la exec. (sto usando la execv)