Bonjour, je dois faire un projet de système en langage C sur les sémaphores, mon problème est que j'ai 2 processus : un lecteur et un écrivain.
Ma question est la suivante :
faut-il bien 1 fork pour chaque processus donc un fork contenant le processus lecteur et un autre comprenant le processus ecrivain ?

Ce qui me donnerai ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
if ((n=fork())==-1)
{
	perror("erreur fork");
	exit(1);
}
else
{
	if (n==0)
	{
		//ici juste le processus fils ecrivain
	}
	else
	{
		//ici le père mais a quoi sert-il ???
	}
}
 
if ((n2=fork())==-1)
{
	perror("erreur fork");
	exit(1);
}
else
{
	if (n==0)
	{
		//ici juste le processu fils lecteur
	}
	else
	{
		//ici le père mais a quoi sert-il ???
	}
}
Comme j'ai mis en commentaire : a quoi sert/peut servir le processus père ? et à la fin du processus fils je présume qu'il faut un exit pour terminer le processus fils, est correcte ?

donc un résumé des questions :
  • Faut-il bien 1 fork pour chaque processus donc un fork contenant le processus lecteur et un autre comprenant le processus écrivain ?
  • A quoi sert/peut servir le processus père ? parce que du coup je ne vois pas trop son but
  • Faut-il un exit pour terminer le processus fils ?
  • Et bien sûr est ce que mon raisonnement est juste du point de vue agencement des processus ?