Correct the code for visitor and vehicle portion, 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, a single passenger may climb aboard and drive 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 for the Visitor and Vehicle portions (assume that other portions of the system admit the tasks to the system). 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:- Correct the code for visitor and vehicle portion

Illustrate scope of consumer behaviour, Q. Illustrate Scope of Consumer beh...

Q. Illustrate Scope of Consumer behaviour ? Scope of consumer behaviour is extremely wide due to following reasons: >>Ever rising intensifying competition. >>Additional a

What are the different constituents of a process, Problem: a) Define th...

Problem: a) Define the term ‘process' and what are the different constituents of a process. b) In the three-state process model, what does each of the three states signify?

Explain a method for process migration, Q. Process migration in a heterogen...

Q. Process migration in a heterogeneous network is typically impossible given the differences in architectures and operating systems. Explain a method for process migration across

Interrupt-driven i/o to manage a single serial port, Q. Why might a system ...

Q. Why might a system utilize interrupt-driven I/O to manage a single serial port however polling I/O to manage a front-end processor such as a terminal concentrator? A

Explain the circumstances under which os use mutexes, Q. Give the reasons ...

Q. Give the reasons why Windows XP, Solaris and Linux implement multiple locking mechanisms. Explain the circumstances under which they use mutexes, spinlocks, semaphores, adaptiv

Why is rotational optimization no longer consequently useful, UNIX systems ...

UNIX systems utilized to use disk-layout optimizations based on the rotation position of disk data however modern implementations including Linux simply optimize for sequential dat

Write a short note on pcb, Write a short note on PCB? Every process is ...

Write a short note on PCB? Every process is represented in the operating system by a process control block also called a task control block. It contains more information regard

Dynamic memory management, Usually memory is allocated from a large pool of...

Usually memory is allocated from a large pool of unused memory area called the heap. In C++, dynamic allocation/deallocation must be manually performed using commands like malloc,

Explain single-user systems, We have stressed the need for an operating sys...

We have stressed the need for an operating system to make efficient use of the computing hardware. When is it appropriate for the operating system to forsake this principle and to

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