Introduction:
The document illustrates about Burrito Brothers restaurant program problem description, design details, implementation details and the architecture of the program. Methodology section covers problem description, considerations and limitations. Design section covers program architecture and finally results and test section covers results and unit testing.
Methodology:
Problem Description:
Simulate and develop the program which addresses the concurrency issue of common usage areas among the servers and customers of a food restaurant.
Conditions:
1. Restaurant has a waiting area which can accommodate only up to 15 customers. This is the common area for all the customers. Any new customers who is trying to enter this area will be blocked until there is a space to …show more content…
If user doesn't enter the number of customers, default value of customers is set as 15.
• Instead of prompting the number of burrito orders for each customer, making it easy we assigned the Value from 1 in the incremental order i.e first customer will order 1 burrito, second customer will order 2 burritos, third customer will order 3 burritos and so-on.
• Semaphore acquire and release was used to block the customers if there is no room for critical sections.
• Critical sections in this program which are handled using counting semaphores are stated below:
• Waiting area
• Servers
• Cash counter
• Counting semaphore of 15 is used to handle Waiting area, as at a time 15 customers can be in the waiting area
• Servers is handled by counting semaphore of 3, as only three servers can handle the customers
• Cash counter is handled by counting semaphore of 1, as only one customer can pay at a time.
Data Structures used in this