semaphores and mute locks

已关闭 已发布的 6 年前 货到付款
已关闭 货到付款

50 points, due by end of day, November 14. Submit files to Linux server.

Submit a text file with the design of the project, and name the file as project.txt.

Provide specific answers to the following questions.

1. How many threads/processes are there?

2. What does each thread/process simulate?

3. Will each thread/process be blocked at some time of simulation? If yes, explain the circumstances.

4. When will a blocked thread/process be waked up, and by whom?

5. How many semaphores are there in your project, what is the purpose for having each?

Submit all of your project’s source code using the submission command to the Linux server.

1. Write program in C language using Pthreads API to simulate the following IPC problem. Refer to Section 5.9.4 for specific instructions on mutex locks and semaphores.

2. If there are multiple files in your submission, you need to provide a makefile as well.

3. Make sure to use mutex locks or semaphores to synchronize the processes/threads.

4. Display messages to the screen to show the state of the system. A good way to validate your program running correctly is to perform some simple output messages to show the state of the system. You can experiment with these messages, but in general you want to demonstrate what each thread is doing. You can use an integer number to identify each thread.

5. If your program needs any arguments in command line (for example, number of passengers and number of cars), you need prompt proper message for the arguments and also valid the input.

6. You may consider how to terminate your program. There are many options. For example, terminate after serving the passengers a given number of times (each service means that one car is used by one passenger). You need to explain this in your code or output as message.

Jurassic Park

Jurassic Park consists of a dinosaur museum and a park for safari tiding. There are n passengers and m single-passenger cars. Passengers wander around the museum for a while, then line up to take a ride in a safari car. When a car is available, it loads the one passenger it can hold and rides around the park for a random amount of time. If the m cars are all out riding passenger around, the passenger who wants to ride waits; if a car is ready to load but there are no waiting passengers, then the car waits. Use semaphores to synchronize the npassenger threads/processes and the m car threads/processes.

C 编程 计算机安全 Linux 网络管理 UNIX

项目ID: #15650894

关于项目

2个方案 远程项目 活跃的6 年前

有2名威客正在参与此工作的竞标,均价$75/小时

hbxfnzwpf

120usd for this project Relevant Skills and Experience I am very proficient in c and c++. I have 16 years c++ developing experience now, and have worked for more than 6 years. My work is online game developing, and ma 更多

$120 USD 在2天内
(156条评论)
7.1
liangjongai

Hi! I'm interesting your project very well. I am mastering c++ and I'm a good Mathematician. And also I have many experience and good skill about semaphore connection. Let's go ahead with me Stay tuned, I'm still wo 更多

$30USD 在1天里
(52条评论)
5.8