In this project you will create a program called producer-consumer. c that will do the following:
when the -p command line argument is passed, it will act as a producer
when the -c command line argument is passed, it will act as a consumer
the message produced by the producer will be given by the command line argument -m "string"
the depth of the queue used by your producer consumer solution will be given by the -q integer command line argument combination.
Your program will either use unix socket (-u) or shared memory (-s) depending on user input in the command line argument
Your program must use linux semaphores to protect critical sections.
When given the -e option, your program should print the string being produced or consumed followed by a new line each time the string is produced or consumed.