Vehicle tasks using semaphores, Operating System

Assignment Help:

Gopher Gallery consists of a shopping mall and a cart ride that covers  the 150 acre habitat. There are m visitors and n single-person vehicles. Visitors  stroll around the mall at their leisure, then line up for the cart ride. When a cart is
available, it allows the single passenger to climb aboard and drives around the habitat for a random amount of time. If the n carts are all taken, then a future rider waits; if a vehicle is available but no one is waiting, then the vehicle waits.
The solution to this problem must synchronize visitor tasks and vehicle tasks using semaphores.
Below is a potential solution. Correct any issues with this code, if any exist.
Explain your position in detail.

Semaphore vehicleAvailable = 0, vehicleTaken = 0, vehicleFilled = 0, visitorReleased = 0;

Visitor()

{
vehicleAvailable.wait();
vehicleTaken.signal();
vehicleFilled.wait();
visitorReleased.wait();

}

Vehicle()

{
while(True)
{

vehicleAvailable.signal();
vehicleTaken.wait();
vehicleFilled.signal();
Drive through habitat for some arbitrary amount of time;
visitorReleased.signal();

}
}


Related Discussions:- Vehicle tasks using semaphores

Explain about demand paging, Explain about demand paging? A demand pagi...

Explain about demand paging? A demand paging system is same to a paging system with swapping. Processes reside on secondary memory. When we require executing a process, we chan

System service program, System Service Program system service program S...

System Service Program system service program Supports and provides the services for other program. System service program perform Varity of tasks.  They are further divided in

Describe paging technique used in unix systems, Describe paging technique u...

Describe paging technique used in UNIX systems. When a process begin in UNIX, not every its memory pages are read in from the disk at once. In its place, the kernel loads into

Explain the concept of reentrancy, Explain the concept of Reentrancy? I...

Explain the concept of Reentrancy? It is a useful, memory-saving method for multiprogrammed timesharing systems. A Reentrant Procedure is one in which many users can share a si

PSEUDO CODE FOR PROGRAM, THE PROGRAM WILL CHOOSE TWO RANDOM NUMBERS,THEN PR...

THE PROGRAM WILL CHOOSE TWO RANDOM NUMBERS,THEN PRINT THEM OUT AS AN ADDITION PROBLEM.THE PROGRAM WILL THEN ASK THE USERTO ENTER THE CORRECT ANSWER.IF THE ANSWER IS CORRECT,THE PRO

What is contiguous allocation, What is contiguous allocation? Allocati...

What is contiguous allocation? Allocation of a group of consecutive sectors for a one file.

Define the division of labour between client and server, Define the Divisio...

Define the Division of Labour between Client and Server Given our definition of client - server as the interaction between dispersed application logic components it must be not

Explain about deadlocks, Q. Explain about Deadlocks? Deadlocks for (...

Q. Explain about Deadlocks? Deadlocks for (int i = 0; i // first find a thread that can finish for (int j = 0; j if (!finish[j]) { boolean temp = true; for

Define abbreviation of sstf, SSTF stands for Abbreviation of SSTF is S...

SSTF stands for Abbreviation of SSTF is Shortest-Seek-time-first scheduling

File system, what are disadvantages of using single directory

what are disadvantages of using single directory

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