PDA

View Full Version : esercizio rompicapo..solo per veri esperti:):) lol


Ricky
04-12-2004, 10:15
ciao a tutti

devo fare questo esercizio (sistemi operativi mod.a):

Ho due processi figli; ognuno deve mandare segnali al padre in tempi casuali. Il padre quando riceve per 4 volte anche non consecutive , 2 segnali dallo stesso figlio , deve uccidere i due figli ed uscire.

ho fatto cosi solo che non va...non capisco perchè!! è l ultimo compito, proprio quello che non ho passato..;( ...( cioè era un pò differente cmq il succo è questo)

allego il file in c perchè copiando ed incollando è un casino...l ho fatto in linux e non va a

capo!


ringrazio tutti coloro che anche solo hanno letto !!

Doctor P
04-12-2004, 10:41
DAndo 1occhiata veloce vedo che hai cannato la gestione delle fork poi magari nel pome vedo meglio. Se chiami una fork dopo una fork crei 3 processi figli, una fork è eseguita dal primo processo figlio e una fork è eseguita dal processo padre = 3 processi figli. La seconda fork devi chiamarla dopo il controllo if pid !=0 cioè solo quando sei nel processo padre perché è lui che genera i figli e basta. Ciauz.

Ricky
04-12-2004, 14:48
se vedi bene non è questo il problema in quanto il figlio1 non andrà mai nella sezione nella quale il pid è diverso da 0!

rimarrà per sempre , fino alla sua morte , nel while infinito che ho creato!!

il problema sta nel ping pong:
quando il padre va in pause la terza volta, non si risveglia più, neanche con le kill eseguite dai figli...non capisco perchè!!