Introduction - If you have any usage issues, please Google them yourself
struct my_pipe
{
wait_queue_head_t inq,outq /* read and write queues*/
char*buffer,*end /* begin of buf,end of buf*/
int buffersize /* used in pointer arithmetic*/
char*rp,*wp /* where to read,where to write*/
int nreaders,nwriters /* number of openings for r/w*/
struct semaphore sem /* mutual exclusion semaphore*/
struct cdev cdev /* Char device structure*/
}