#include #include #include #include #include #include #define BUFFER_SIZE 10 typedef struct buffer { sem_t empty; sem_t full; pthread_mutex_t mutex; int pos; int data[BUFFER_SIZE]; } buffer; void * produce(void *buf); void * consume(void *buf); void init_buffer(buffer *buf);