Modify each program given in this lab to include response time #include #include   int mutex=1,full=0,empty=3,x=0;   int main() {         int n;         void producer();         void consumer();         int wait(int);         int signal(int);         printf("\n1.Producer\n2.Consumer\n3.Exit");         while(1)         {                printf("\nEnter your choice:");                scanf("%d",&n);                switch(n)                {                        case 1: if((mutex==1)&&(empty!=0))                                               producer();                                       else                                               printf("Buffer is full!!");                                       break;                        case 2: if((mutex==1)&&(full!=0))                                               consumer();                                       else                                               printf("Buffer is empty!!");                                       break;                        case 3:                                       exit(0);                                       break;                }         }                 return 0; }   int wait(int s) {         return (--s); }   int signal(int s) {         return(++s); }   void producer() {         mutex=wait(mutex);         full=signal(full);         empty=wait(empty);         x++;         printf("\nProducer produces the item %d",x);         mutex=signal(mutex); }   void consumer() {         mutex=wait(mutex);         full=wait(full);         empty=signal(empty);         printf("\nConsumer consumes item %d",x);         x--;         mutex=signal(mutex); }

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
  • Modify each program given in this lab to include response time
  • #include<stdio.h>

    #include<stdlib.h>

     

    int mutex=1,full=0,empty=3,x=0;

     

    int main()

    {

            int n;

            void producer();

            void consumer();

            int wait(int);

            int signal(int);

            printf("\n1.Producer\n2.Consumer\n3.Exit");

            while(1)

            {

                   printf("\nEnter your choice:");

                   scanf("%d",&n);

                   switch(n)

                   {

                           case 1: if((mutex==1)&&(empty!=0))

                                                  producer();

                                          else

                                                  printf("Buffer is full!!");

                                          break;

                           case 2: if((mutex==1)&&(full!=0))

                                                  consumer();

                                          else

                                                  printf("Buffer is empty!!");

                                          break;

                           case 3:

                                          exit(0);

                                          break;

                   }

            }

           

            return 0;

    }

     

    int wait(int s)

    {

            return (--s);

    }

     

    int signal(int s)

    {

            return(++s);

    }

     

    void producer()

    {

            mutex=wait(mutex);

            full=signal(full);

            empty=wait(empty);

            x++;

            printf("\nProducer produces the item %d",x);

            mutex=signal(mutex);

    }

     

    void consumer()

    {

            mutex=wait(mutex);

            full=wait(full);

            empty=signal(empty);

            printf("\nConsumer consumes item %d",x);

            x--;

            mutex=signal(mutex);

    }

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Hiring Problem
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education