Professional Documents
Culture Documents
Detyra Kursit Alkete
Detyra Kursit Alkete
Detyra Kursit Alkete
Universiteti I tiranes
FAKULTETI I SHKENCAVE TE NATYRES
Dega: Matematike
Viti: 2
else { if (pID==1) {
fork();
if (n>0){ fork();
parent=true;
child= true; }
printf(“Parent”);
n2 - = n1; else {
if (n>0){
printf(“Child”); child= true;
n2 - = n1;
} printf(“Child”);
}
else { else {
printf(“Child”); printf(“Child”);
n1 += n2;
n1 += n2; }
}
} printf(“%d”,n1);
printf(“%d”,n2);
} }
printf(“%d”,n1);
printf(“%d”,n2);
}
Pid=1 pID=0
Int main(){ Int main(){
Int n1=18, n2=27; Int n1=18, n2=27;
bool parent=false; bool parent=false;
bool child= false; bool child= false;
pID= fork(); pID= fork();
if (pID==1) { if (pID==1) {
fork(); fork();
fork(); fork();
parent=true; parent=true;
printf(“Parent”); printf(“Parent”);
} }
else { else {
if (n>0){ if (n>0){
child= true; child= true;
n2 - = n1; n2 - = n1;
printf(“Child”); printf(“Child”);
} }
else { else {
printf(“Child”); printf(“Child”);
n1 += n2; n1 += n2;
} }
} }
printf(“%d”,n1); printf(“%d”,n1);
printf(“%d”,n2); printf(“%d”,n2);
} }
fork(); fork();
parent=true; parent=true;
printf(“Parent”); printf(“Parent”);
} }
printf(“%d”,n1); printf(“%d”,n1);
printf(“%d”,n2); printf(“%d”,n2);
} }
parent=true; parent=true; parent=true; parent=true;
printf(“Parent”); printf(“Parent”); printf(“Parent”); printf(“Parent”);
} } } }
printf(“%d”,n1); printf(“%d”,n1); printf(“%d”,n1); printf(“%d”,n1);
printf(“%d”,n2); printf(“%d”,n2); printf(“%d”,n2); printf(“%d”,n2);
} } } }
Output:
pID=1 pID=0
if(fork()){ if(fork()){
printf(“A”); printf(“A”);
fork(); fork();
var += 2; var += 2;
} }
else { else {
fork(); fork();
var++; var++;
} }
printf(“%d”,var); printf(“%d”,var);
} }
} } } }
printf(“%d”,var); printf(“%d”,var); printf(“%d”,var); printf(“%d”,var);
Output:
Parent 18 27 Parent 18 27 Parent 18 27 Parent 18 27 Child 18 9