changements mineurs
parent
3fc61b78e9
commit
d1e2354cbe
|
@ -0,0 +1,6 @@
|
||||||
|
#define NPLEIN 1
|
||||||
|
#define NVIDE 2
|
||||||
|
#define MUTEX_1 3
|
||||||
|
#define MUTEX_2 4
|
||||||
|
#define MAX_PROD 5 // Maximum de producteurs
|
||||||
|
#define MAX_BUF 100 // Taille maximale du buffer
|
|
@ -9,26 +9,6 @@
|
||||||
#include <sys/ipc.h>
|
#include <sys/ipc.h>
|
||||||
#include <sys/sem.h>
|
#include <sys/sem.h>
|
||||||
|
|
||||||
|
|
||||||
/*void erreurMes(char * format, ...)
|
|
||||||
{
|
|
||||||
char texte[200];
|
|
||||||
va_list liste_arguments;
|
|
||||||
|
|
||||||
va_start(liste_arguments,format);
|
|
||||||
|
|
||||||
vsnprintf(texte,200,format,liste_arguments);
|
|
||||||
|
|
||||||
va_end(liste_arguments);
|
|
||||||
|
|
||||||
if(errno)
|
|
||||||
perror(texte);
|
|
||||||
else
|
|
||||||
fprintf(stderr,texte);
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
int creat_sem(key_t cle,int val)
|
int creat_sem(key_t cle,int val)
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
typedef MEMP // Structure de sémaphore
|
||||||
|
{
|
||||||
|
int max_prod;
|
||||||
|
int tete;
|
||||||
|
int queue;
|
||||||
|
int tpa[MAX_PROD]; // -1 de tpa[i] alors libre, 0 sinon
|
||||||
|
MSG f[MAX_BUF]; // Buffer stockant les caractères émis par les différents producteurs
|
||||||
|
}
|
||||||
|
|
||||||
|
// Arrêt sur ^D du consommateur, arrêt de tous les IPC et on s'arrête
|
||||||
|
// du producteur, arrêt des IPC, met à jour le tableau à -1 sur sa case et il s'arrête
|
||||||
|
|
||||||
|
typedef struct MSG
|
||||||
|
{
|
||||||
|
char c; // caractère émi
|
||||||
|
int idp; // indice du producteur
|
||||||
|
}
|
Loading…
Reference in New Issue