Lock revenue variable, Operating System

Assignment Help:

Demonstrate that your program (include the program output as part of the final report) can produce the correct output with the following parameters. For each case comment if the output agree with the given parameters.

Case a. factory_delay=1, retail_delay=2, warehouse_delay=3, max_product=2 and max_revenue=4.


Case b. factory_delay=2, retail_delay=1, warehouse_delay=3, max_product=3 and max_revenue=4.

Case c. factory_delay=1, retail_delay=3, warehouse_delay=2, max_product=3 and max_revenue=6.

Factory thread:
 
    printf("Factory thread starting.\n");
 
   while (1){
   
     // lock revenue variable and test for termination conditon
     if (revenue>=max_revenue){
  break;
  }
   
     if ((product0)){
       product++;
       parts--;
    revenue--;

         printf("Factory: manufacturing. | Parts=%d | Products=%d | Revenue=%d|\n",parts,product,revenue);
     }
     else{
       if (product>=max_products)
         printf("Factory: stock overflow! | Parts=%d | Products=%d | Revenue=%d |\n",parts,product,revenue);      
       else if (parts<1)
         printf("Factory: no parts! | Parts=%d | Products=%d | Revenue=%d |\n",parts,product,revenue);      
     }   
       
     // delay the thread according to factory_delay
     Sleep(factory_delay*1000);
   }
 
    printf("Factory thread terminating.\n");


Related Discussions:- Lock revenue variable

Define overflow chaining, Define Overflow Chaining Another method will ...

Define Overflow Chaining Another method will divide the pre-allocated table into two sections: the primary area to determine which keys are mapped and an area for collisions, g

Us constitution, what branch of goverment were the federal courts are?

what branch of goverment were the federal courts are?

How many page faults take place in lru replacement, Q. Consider the subseq...

Q. Consider the subsequent page reference string: 1, 2, 3, 4, 2, 1, 5, 6, 2, 1, 2, 3, 7, 6, 3, 2, 1, 2, 3, 6. How many page faults would take place for the following replace

What is a real-time system?, What is a Real-time system? A Real-time sy...

What is a Real-time system? A Real-time system is used when inflexible time requirements have placed on the operation of processor or the flow of data so it is often used as a

Briefly discuss on i/o hardware, Briefly discuss on I/O hardware? A con...

Briefly discuss on I/O hardware? A controller is a collection of electronics that can operate a port, a bus, or a device. A serial-port controller is an easy controller. It is

Scheduler that select process from secondary storage device, A scheduler th...

A scheduler that selects processes from secondary storage device is known as                    Medium term scheduler is a scheduler that selects processes from secondary stor

What are the operations of processes, What are the operations of processes?...

What are the operations of processes? Process creation A process may create several new processes. The creating process is called as parent process, where as the new proce

Unix operating system, A working Ubuntu Linux operating system.  You can us...

A working Ubuntu Linux operating system.  You can use a Live-CD to complete this assignment. Create an empty text file named assignment6.txt in your home directory. Edit this

Explain the exitthread function used in the windows nt, Explain the ExitThr...

Explain the ExitThread Function used in the Windows NT ExitThread(ExitCode) The ExitThread( ) call is made to end the currently running thread. If the current thread is th

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd