Answered step by step
Verified Expert Solution
Question
1 Approved Answer
#include #include #include #include pthread_t tid; pthread_t writerthreads[50],readerthreads[50]; void *reader(void* param) { printf(reader in CS to read ); printf(Reader leaving CS ); return NULL; }
#include#include #include #include pthread_t tid; pthread_t writerthreads[50],readerthreads[50]; void *reader(void* param) { printf("reader in CS to read "); printf("Reader leaving CS "); return NULL; } void *writer(void* param) { printf("Writer writing in CS "); return NULL; } int main() { int r1,w1,i,j; printf("Enter the number of readers:"); scanf("%d",&r1); printf("Enter the number of writers:"); scanf("%d",&w1); printf(" "); for(i=0;i Modify the program using semaphores constructs to avoid the race condition. Display the output as given below if the number of readers are 8 and writers are entered as 2. The output displays reader and writer numbers as shown below.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started