Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 06/12/2015, à 20:55

tiramiseb

Re : exercice sur fork()

lol

Hors ligne

#27 Le 06/12/2015, à 20:58

cqfd93

Re : exercice sur fork()

hanouna9415 a écrit :

je veux seulement savoir vos réponses en les comparent avec la mienne ni plus ni moins

Le minimum serait de montrer la tienne.


cqfd93

Hors ligne

#28 Le 07/12/2015, à 00:54

pires57

Re : exercice sur fork()

C'est amusant tiens, être jugé sur ses compétences par une personne qui n'es même pas encore diplômé..
Comme je l'ai dis , si tu donnes un élément de réponse on se permettra de te répondre et de t orienter vers la réponse.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#29 Le 10/12/2015, à 18:06

alius

Re : exercice sur fork()

La fonction pid_t fork(void) de unistd.h crée un nouveau processus elle fait une copie de l'image mémoire du processus père. Ce n'est pas la même chose qu'un thread. Un thread partage la mémoire avec les autres threads. J'ai déjà vu des types faire un fork quand ils se retrouvaient à court de mémoire.... Cette pratique est bien évidemment à proscrire.
Avec des threads il faudra utiliser des objets de type mutex, sémaphre,... pour accéder à la mémoire partagée ce qui n'est pas le cas avec un fork(). Avec un fork on peut utiliser un pipe ou des sockets unix pour accéder à la mémoire d'un autre process.

A savoir : quand on fork le programme fils commence à partir du fork ! donc on sait qu'on est dans le fils en fonction du retour de la fonction (si == 0) dans le père sinon.

Ensuite il a été fait mention du phénomène de coupe circuit : et c'est très important pour cet exercice.
C'est à dire que pour une expression logique comme : false && true, la deuxième opérande n'est pas évaluée parce que la première correspond à l'élément absorbant du ET logique, le résultat est connue d'avance !

Un conseil pour ce monsieur qui veut qu'on lui corrige son exercice ...
dessines un arbre avec une séparation pour chaque fork() évalué que tu rencontres. (attention à l'ordre d'évaluation des expressions) en dessinant par exemple une branche vers la gauche quand fork() retourne 0 et vers la droite sinon.

bonne chance !


Alius

Hors ligne