Moins de bugs

This commit is contained in:
Philippe Pittoli 2011-03-19 12:29:52 +01:00
parent 340b9beab2
commit 13119a2d53
5 changed files with 39 additions and 26 deletions

View File

@ -3,24 +3,21 @@ CONS = consommateur
PROD = producteur
CFLAGS = -Wall -g
COMMUN = sema.o global.o
CONSOM = consommateur.o
PRODUCT = producteur.o
all: $(COMMUN) $(CONSOM) $(PRODUCT)
$(CC) $(CONSOM) -o $(CONS)
$(CC) $(PRODUCT) -o $(PROD)
all: $(COMMUN) consommateur.o producteur.o
$(CC) consommateur.o -o $(CONS) sema.o
$(CC) producteur.o -o $(PROD) sema.o
consommateur.o : consommateur.c consommateur.h constantes.h types.h
$(CC) -o $@ -c $< $(CFLAGS)
producteur.o : producteur.c producteur.h constantes.h types.h
$(CC) -o $@ -c $< $(CFLAGS)
sema.o : sema.h sema.c
sema.o : sema.c sema.h
$(CC) -o $@ -c $< $(CFLAGS)
global.o : global.c
$(CC) -o $@ -c $< $(CFLAGS)
consommateur.o : consommateur.c consommateur.h constantes.h types.h sema.h
$(CC) -o $@ -c $< $(CFLAGS)
producteur.o : producteur.c producteur.h constantes.h types.h sema.h
$(CC) -o $@ -c $< $(CFLAGS)
clean:
@rm -rf *.o *.out

View File

@ -1,15 +1,38 @@
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "constantes.h"
#include <sys/types.h>
#include <sys/ipc.h>
#include <assert.h>
#include <unistd.h>
#include <fcntl.h>
#include <stdarg.h>
#include <errno.h>
#include <sys/sem.h>
#include "consommateur.h"
#include "types.h"
#include "sema.h"
#include "constantes.h"
int main( int argc, char **argv)
{
if(argc < 2) { printf("Usage : %s numIPC\n"); exit(EXIT_FAILURE); }
if(argc < 2) { printf("Usage : %s numIPC\n", argv[0]); exit(EXIT_FAILURE); }
int clef = atoi(argv[1]);
key_t clef = (key_t) atoi(argv[1]);
MEMP memoireP;
memoireP.tete = 0;
memoireP.queue = 0;
int semid;
semid = creat_sem( clef, MAX_PROD);
if(semid >= 0)
{
sleep(10);
del_sem(clef);
}
exit(EXIT_SUCCESS);
}

View File

@ -1 +1,2 @@
#include "sema.h"
int main(int,char **);

View File

@ -8,6 +8,8 @@
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
#include "sema.h"
int creat_sem(key_t cle,int val)
{
int semid;

View File

@ -1,13 +1,3 @@
#include <stdlib.h>
#include <assert.h>
#include <unistd.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdarg.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
void erreur(char *s);
int open_sem(key_t cle);
@ -16,7 +6,7 @@ void V(int semid);
/*-----------------------------------------------------------*/
int creat_sem(key_t cle, ushort val);
int creat_sem(key_t cle, int val);
/* creation du semaphore cle ayant comme valeur initiale val
retourne un identificateur de semaphore >=0 ou -1 si erreur
*/