Barrier synchronization is used to synchronize two or more processes so that all processes must finish their first phase befor any of them is allowed to start its second phase. For two processes, we might write: process P1 process P2 { { /* Phase-l */ /* Phase-l */ signal(s1); signal(s2); wait(s2); wait(s1); /* Phase-Il */ /* Phase-I| */ } }, Where s1 and s2 are two binary semaphores, both initialized to 0. Now, suppose there are four processes P1, P2, P3, and P4 all being executed in two phases. The execution of the processe must satisfy the following requirements: Process P3 must finish phase-l first, followed by process P2, which must finish Phase-l before any of the other two processes start that phase. • All phase-l's must finish before any phase-Il starts. • Phase-Il of the processes must be executed in this order: P2 first, followed by P1 or P3, and P4 last. Provide the pseudo code for your solution using semaphores. You are allowed to use any number of semaphores. N.B. You may write your answer in a different editor and then upload the document.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
100%

***please answer asap, upvote gauranteed 

Barrier synchronization is used to synchronize two or more processes so that all processes must finish their first phase before
any of them is allowed to start its second phase. For two processes, we might write:
process P1
process P2
{
{
/* Phase-l */
/* Phase-| */
signal(s1);
signal(s2);
wait(s2);
wait(s1);
/* Phase-Il */
/* Phase-Il */
}
},
Where s1 and s2 are two binary semaphores, both initialized to
Now, suppose there are four processes P1, P2, P3, and P4 all being executed in two phases. The execution of the processes
must satisfy the following requirements:
• Process P3 must finish phase-l first, followed by process P2, which must finish Phase-l before any of the other two
processes start that phase.
• All phase-l's must finish before any phase-ll starts.
• Phase-Il of the processes must be executed in this order: P2 first, followed by P1 or P3, and P4 last.
Provide the pseudo code for your solution using semaphores. You are allowed to use any number of semaphores.
N.B. You may write your answer in a different editor and then upload the document.
Transcribed Image Text:Barrier synchronization is used to synchronize two or more processes so that all processes must finish their first phase before any of them is allowed to start its second phase. For two processes, we might write: process P1 process P2 { { /* Phase-l */ /* Phase-| */ signal(s1); signal(s2); wait(s2); wait(s1); /* Phase-Il */ /* Phase-Il */ } }, Where s1 and s2 are two binary semaphores, both initialized to Now, suppose there are four processes P1, P2, P3, and P4 all being executed in two phases. The execution of the processes must satisfy the following requirements: • Process P3 must finish phase-l first, followed by process P2, which must finish Phase-l before any of the other two processes start that phase. • All phase-l's must finish before any phase-ll starts. • Phase-Il of the processes must be executed in this order: P2 first, followed by P1 or P3, and P4 last. Provide the pseudo code for your solution using semaphores. You are allowed to use any number of semaphores. N.B. You may write your answer in a different editor and then upload the document.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Knowledge Booster
Business Models
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education