Moins de bugs

master
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 PROD = producteur
CFLAGS = -Wall -g CFLAGS = -Wall -g
COMMUN = sema.o global.o COMMUN = sema.o global.o
CONSOM = consommateur.o all: $(COMMUN) consommateur.o producteur.o
PRODUCT = producteur.o $(CC) consommateur.o -o $(CONS) sema.o
all: $(COMMUN) $(CONSOM) $(PRODUCT) $(CC) producteur.o -o $(PROD) sema.o
$(CC) $(CONSOM) -o $(CONS)
$(CC) $(PRODUCT) -o $(PROD)
consommateur.o : consommateur.c consommateur.h constantes.h types.h sema.o : sema.c sema.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
$(CC) -o $@ -c $< $(CFLAGS) $(CC) -o $@ -c $< $(CFLAGS)
global.o : global.c global.o : global.c
$(CC) -o $@ -c $< $(CFLAGS) $(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: clean:
@rm -rf *.o *.out @rm -rf *.o *.out

View File

@ -1,15 +1,38 @@
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>
#include <stdlib.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 "types.h"
#include "sema.h"
#include "constantes.h"
int main( int argc, char **argv) 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); exit(EXIT_SUCCESS);
} }

View File

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

View File

@ -8,6 +8,8 @@
#include <sys/types.h> #include <sys/types.h>
#include <sys/ipc.h> #include <sys/ipc.h>
#include <sys/sem.h> #include <sys/sem.h>
#include "sema.h"
int creat_sem(key_t cle,int val) int creat_sem(key_t cle,int val)
{ {
int semid; 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); void erreur(char *s);
int open_sem(key_t cle); 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 /* creation du semaphore cle ayant comme valeur initiale val
retourne un identificateur de semaphore >=0 ou -1 si erreur retourne un identificateur de semaphore >=0 ou -1 si erreur
*/ */