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

What is a file, What is a file? A file is a named collection of related...

What is a file? A file is a named collection of related information that is recorded on secondary storage. A file having either programs or data. A file has particular "structu

Describe the benefits of using microkernels, Question: (a) (i) What is ...

Question: (a) (i) What is a microkernel? Describe the benefits of using microkernels. (ii) How does a microkernel-based operating system differ from a traditional operating

Ipc, Explain in detail about ipc in linux

Explain in detail about ipc in linux

What is time-stamping, time-stamping It is a method proposed by Lampor...

time-stamping It is a method proposed by Lamport, used to sequencing events in a distributed machine without the use of clocks. This process is intended to order events consis

Sharing memory, As we have discussed, page tables map virtual page addresse...

As we have discussed, page tables map virtual page addresses to physical page addresses. One of the advantages of using virtual addresses is that we can achieve complete separation

What is the exclusive feature of unix, What is the exclusive feature of UNI...

What is the exclusive feature of UNIX Shell is the exclusive feature of UNIX.

Garbage collection, The dynamic memory allocator is a layer between the app...

The dynamic memory allocator is a layer between the application and the OS, managing heap objects. When a program requests memory from the allocator (via malloc(), for instance), t

What is a file, Question 1 What is a file? Write down the operations on fi...

Question 1 What is a file? Write down the operations on files Question 2 What do you mean virtual machine? Write down the application of virtual machine Question 3 What

Explain fifo page replacement in detail, FIFO page replacement This is...

FIFO page replacement This is the easiest page replacement algorithm. Here the 1 st page toward the inside is the 1 st to leave that is the oldest page leaves. To execute 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