Ask Question, Ask an Expert

+1-415-315-9853

info@mywordsolution.com

Ask Programming Language Expert

problem1. describe why interrupts are not appropriate for implementing synchronization primitive in multiprocessor systems and why spinlocks are not appropriate for single-processor systems yet are often used in multiprocessor systems.

problem2.
Mutual exclusion primitives can be implemented with busy waiting or with blocking. Discuss the applicability and relative merits of each approach.

problem3.
Synchronization within monitors uses condition variables and two special operation wait and signal. A more general form of synchronization would be to have a single primitive, waituntil, that had an arbitrary boolean predicate as a parameter. Thus, one could say, for ex waituntil x < 0 or y+z < nThe signal primitive would no longer be needed. This scheme is clearly more general, but it is not used. Why not? Hint, think about the implementation.

problem4.
Suppose there are 2 threads T1, T2. Please describe if the following solution provides the correct synchronization for critical section that satisfies three conditions:  mutual exclusion, bounded wait and make progress.

1703_programing.jpg
problem5. Please prepare the pseudocode for the following problems:

1. Semaphore operation wait() and signal() implemented using block waiting.

2. Consider a pizza store which has 10 seats. A customer comes to buy pizza. If there is any unsold pizza left in the kitchen, he can get it immediately. If not, (s)he  need wait for chef to make one. After the customer gets the pizza, (s)he will grab a seat and start eating. If there is no seat, (s)he needs to wait. When (s)he finishes eating, (s)h will left the store. The chef in the kitchen just keeps making pizza. However, (s)he stops if there are 5 unsold pizza left in the kitchen. If a customer come to buy one, (s)he resumes the work to make new pizza. Please prepare pseudocode for both customer and chef using semaphore to solve this problem, and synchronize chef and customers.

Programming Problem:  

problem6. prepare a multi-threaded program to solve producer and consumer problem.

- There are two types of worker thread: producer and consumer. A producer thread randomly generate an integer between 0-100 (You can use random()/srandom()  or drand48()/srand48() to generate random number in C), and put it into the buffer. A consumer thread simple take the first integer from the buffer. A circular array should be used for the buffer. You do not need loop for both types of thread. Each thread will exit after only consuming or producing one item (only once).

- Assume total number of worker thread is 20, and buffer size is 10. Your program should randomly generate the number of producers and consumers. Their relationship should be : num_producers + num_consumers = num_threads, num_producer - num_consumer <= buffer_size, num_consumer <= num_producer, so that no thread will be blocked forever.  The order between consumer and producer threads should be arbitrary. For ex, you shall not generate all producers (consumers) and then all consumers (producers).  (5 points)

- Synchronize the producer and consumer.  

- You can choose any type of language (e.g. C/C++/Java) to implement this program.

Your output will look like the following:  

Number of producer: 12 Number of consumer: 8
Thread 0 produce 63 in buffer 0, current number of items is 1
Thread 1 consume item 63 in buffer 0, current number of items is 0
Thread 3 produce 45 in buffer 1, current number of items is 1
Thread 5 produce 88 in buffer 2, current number of items is 2
Thread 4 consume item 45 in buffer 1, current number of items is 0
…....
…..
…...

There are still 4 items left in the buffer: 96,26,52,81

- Please check blackboard for more reference about pthread library if you choose to use it.

- Please submit all source code and a simple readme file on how to compile your code and the sample output. Please zip all files into a single zip file and submit through blackboard.

You can choose any of the following problems:

problem7. prepare a program to simulate pizza store problem in problem 3.2.

problem8. Describe how spinlock is implemented in Linux kernel and how/where it is used? Please give some concrete exs, e.g. list the data structure/functions related to spinlock implementation, describe the code of some spinlock functions, and describe how to use these functions for synchronization, list the functions that use spinlocks and their purpose.

Programming Language, Programming

  • Category:- Programming Language
  • Reference No.:- M9870
  • Price:- $55

Guranteed 36 Hours Delivery, In Price:- $55

Have any Question? 


Related Questions in Programming Language

Assignmentwrite a console application to meet the following

Assignment Write a console application to meet the following requirements. Create a system for a simple library. The library has a name and a list of books. Each book has a title, author and an int as the id number. Defi ...

Frans virtual fruit standuse the concepts and scenario from

Frans Virtual Fruit Stand Use the concepts and scenario from Assignment to help Fran's Virtual Fruit Stand increase the functionality of its online shopping cart. When a customer checks out, the shopping cart must store ...

Write 2 programsone program will use a structure to store

Write 2 programs: One program will use a structure to store the following data on a company division: Division Name (such as East, West, North, or South) Quarter (1, 2, 3, or 4) Quarterly Sales The user should be asked f ...

Test 1you are permitted the use of pre-written notes

Test 1 You are permitted the use of pre-written notes, previous labs and the textbook. You are NOT permitted the help of the Lab TA or the Internet. Any cheating will result in a report Academic Integrity Violation and a ...

1 write a pseudo code before starting your program do not

1. Write a pseudo code before starting your program ( do not use SWITCH, replace it with IF structures ) 1.1 Draw a flowchart for your program based on your pseudo code 2. Identify your constants 3. Your input will come ...

The colors red blueand yellow are known as the primary

The colors red blueand yellow are known as the primary colors because they cannot be made by mixing other colors. When you mix two primary colors, you get a secondary color as shown here: When you mix red and blue you ge ...

Project on grammarsnbspcourseist 230cmpsc

PROJECT ON GRAMMARS   Course: IST 230/CMPSC 360   Deadline: see the calendar in Canvas for the deadline   Objective: To acquire a comprehensive understanding of the application of grammars and formal language theory to c ...

Assignmenta student had to make a decision on how to be

Assignment A student had to make a decision on how to be paid. The student could accept a straight $10/hour or take 10 cents for the first hour, but have the hourly wage double each hour. That is, the student would make ...

Question 1what is overriding please use code to explain it

Question 1: What is overriding? Please use code to explain it. (Cannot use the same code in class) Question 2: What are the benefits when inheritance is used if multiple classes share the same fields and methods? Questio ...

Assignemntbulla non-gui based java application that

Assignemnt •A non-GUI based Java application that fulfills the requirements listed below. All output should be to the console/standard output. •Salespersons for Big State Books receive a commission of ten percent for eac ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

WalMart Identification of theory and critical discussion

Drawing on the prescribed text and/or relevant academic literature, produce a paper which discusses the nature of group

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro