Semaphore examples, Operating System

Assignment Help:
Ok so i think i got this right by not 100% on this. what I want to figure out is if there are x visitors that can line up for a ride but only 1 passenger can get on the ride at a time when the ride is available. If y number of rides are taken, the visitors have to wait for a ride to become available. If the ride is available but no visitor is then the ride waits.

So this is what i got so far this is all just psudo code I dont really need this to work I just need to wrap my head around the semaphore thing

Semaphore rideAvaliable = 0. rideTaken = 0, rideFilled = 0, visitorReleased = 0;


Visitor()
{
rideAvaliable.wait();
rideTaken.signal();
rideFilled.wait();
visitorReleased.wait();
}

Vehicle()
{
while(TRUE)
{
rideAvaliable.signal();
rideTaken.wait();
ride.Filled.signal();
Drive around for a bit
visitorReleased.signal();
}
}

Related Discussions:- Semaphore examples

Explain objectives of the file management system, Problem: a) Define a ...

Problem: a) Define a ‘file' and list the objectives of the file management system. b) List the ways in which programs access files and determine for what file types you woul

Process execution priorities, Priority Scheduling leads to the risk of star...

Priority Scheduling leads to the risk of starvation: a process is ready, but never is given the processor. Some preemptive priority schedulers therefore reserve a fraction of the p

Process abstraction in operating systems, Many early operating systems rega...

Many early operating systems regarded processes as different timesharing users. The process abstraction is a popular way to organize concurrent programs, but it is not the only cho

What is spooling, What is spooling? Spooling overlaps the I/O of single...

What is spooling? Spooling overlaps the I/O of single job with the computation of other jobs.

Define segmentation, Define Segmentation  The memory allocation method...

Define Segmentation  The memory allocation method subject to “external” fragmentation is Segmentation.

System structures, advantages and disadvantages of monolithic and layered a...

advantages and disadvantages of monolithic and layered approach

Memory Management Problems, Sir i want formulas in Memory management starti...

Sir i want formulas in Memory management starting from paging till the demang paging in a easy manner for solving problems in competitive exams

Developing code with threads, Developing Code with Threads Writing code...

Developing Code with Threads Writing code to support a thread-based implementation is very straightforward. Simple APIs are presented to the developer for each threads package.

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