SlideShare a Scribd company logo
1 of 1
Download to read offline
Software Design Problem (7 marks) Suppose you are working as part of a design team to create a
event capability. An event, is synchronization object very like a binary semaphore. It can be in
two states: SET and RESET. There are two differences. First, events must be manually reset.
Second, when an event is signalled, all threads blocked on that event will unblock. A thread can
block on an event using Wait if it is in the RESET state (a call to Wait if it is in the SET state
will simply return). When the event becomes SET after a call to Set, the block will end, but the
event will remain SET until explicitly Reset. The operating system currently uses counted (ie:
standard) semaphores as its only synchronization tool: class Semaphore i // This is a counted
senaldicte public: Semaphore (int initialCount): - Semaphore (); void Signal(); void wait(); 1;
Figure 1: Exis as resources Provide a design for a new class Event. As you can see in the figure,
Event has five public functions: a constructor, Set, Reset, Wait and a destructor. Make sure your
answer includes implementations for each of them. As usual, I will accept any plausible format
(code, pseudocode, diagrams, stories, etc) BUT make sure you make reference to the features of
the existing OS (Figure 1) as you use them so the operation is clear. You can add whatever data
members to the class you need to make it work.

More Related Content

Similar to Software Design Problem (7 marks) Suppose you are working as part of a.pdf

Flex Building User Interface Components
Flex Building User Interface ComponentsFlex Building User Interface Components
Flex Building User Interface ComponentsAhmad Hamid
 
iOS app dev Training - Session1
iOS app dev Training - Session1iOS app dev Training - Session1
iOS app dev Training - Session1Hussain Behestee
 
Desenvolva um game para android ou iPhone
Desenvolva um game para android ou iPhoneDesenvolva um game para android ou iPhone
Desenvolva um game para android ou iPhoneTiago Oliveira
 
Reactotron - A Debugging Agent
Reactotron -  A Debugging AgentReactotron -  A Debugging Agent
Reactotron - A Debugging AgentMatthieu Vachon
 
Developer Student Clubs NUK - Flutter for Beginners
Developer Student Clubs NUK - Flutter for BeginnersDeveloper Student Clubs NUK - Flutter for Beginners
Developer Student Clubs NUK - Flutter for BeginnersJiaxuan Lin
 
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)noorcon
 
Short Intro to Android Fragments
Short Intro to Android FragmentsShort Intro to Android Fragments
Short Intro to Android FragmentsJussi Pohjolainen
 
Lecture 07 virtual machine i
Lecture 07 virtual machine iLecture 07 virtual machine i
Lecture 07 virtual machine i鍾誠 陳鍾誠
 
Android development Training Programme Day 2
Android development Training Programme Day 2Android development Training Programme Day 2
Android development Training Programme Day 2DHIRAJ PRAVIN
 
Android platform activity
Android platform activityAndroid platform activity
Android platform activityHoang Vy Nguyen
 
android activity
android activityandroid activity
android activityDeepa Rani
 
08.1. Android How to Use Intent (explicit)
08.1. Android How to Use Intent (explicit)08.1. Android How to Use Intent (explicit)
08.1. Android How to Use Intent (explicit)Oum Saokosal
 
Getting started with Verold and Three.js
Getting started with Verold and Three.jsGetting started with Verold and Three.js
Getting started with Verold and Three.jsVerold
 
Detecting aspect-specific code smells using Ekeko for AspectJ
Detecting aspect-specific code smells using Ekeko for AspectJDetecting aspect-specific code smells using Ekeko for AspectJ
Detecting aspect-specific code smells using Ekeko for AspectJCoen De Roover
 
The java swing_tutorial
The java swing_tutorialThe java swing_tutorial
The java swing_tutorialsumitjoshi01
 
How to dispatch redux action with timeout
How to dispatch redux action with timeoutHow to dispatch redux action with timeout
How to dispatch redux action with timeoutBOSC Tech Labs
 

Similar to Software Design Problem (7 marks) Suppose you are working as part of a.pdf (20)

Flex Building User Interface Components
Flex Building User Interface ComponentsFlex Building User Interface Components
Flex Building User Interface Components
 
iOS app dev Training - Session1
iOS app dev Training - Session1iOS app dev Training - Session1
iOS app dev Training - Session1
 
Desenvolva um game para android ou iPhone
Desenvolva um game para android ou iPhoneDesenvolva um game para android ou iPhone
Desenvolva um game para android ou iPhone
 
Reactotron - A Debugging Agent
Reactotron -  A Debugging AgentReactotron -  A Debugging Agent
Reactotron - A Debugging Agent
 
Developer Student Clubs NUK - Flutter for Beginners
Developer Student Clubs NUK - Flutter for BeginnersDeveloper Student Clubs NUK - Flutter for Beginners
Developer Student Clubs NUK - Flutter for Beginners
 
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
 
Short Intro to Android Fragments
Short Intro to Android FragmentsShort Intro to Android Fragments
Short Intro to Android Fragments
 
Lecture 07 virtual machine i
Lecture 07 virtual machine iLecture 07 virtual machine i
Lecture 07 virtual machine i
 
Android development Training Programme Day 2
Android development Training Programme Day 2Android development Training Programme Day 2
Android development Training Programme Day 2
 
Android platform activity
Android platform activityAndroid platform activity
Android platform activity
 
android activity
android activityandroid activity
android activity
 
Android development session 2 - intent and activity
Android development   session 2 - intent and activityAndroid development   session 2 - intent and activity
Android development session 2 - intent and activity
 
08.1. Android How to Use Intent (explicit)
08.1. Android How to Use Intent (explicit)08.1. Android How to Use Intent (explicit)
08.1. Android How to Use Intent (explicit)
 
Getting started with Verold and Three.js
Getting started with Verold and Three.jsGetting started with Verold and Three.js
Getting started with Verold and Three.js
 
Detecting aspect-specific code smells using Ekeko for AspectJ
Detecting aspect-specific code smells using Ekeko for AspectJDetecting aspect-specific code smells using Ekeko for AspectJ
Detecting aspect-specific code smells using Ekeko for AspectJ
 
iOS Development (Part 2)
iOS Development (Part 2)iOS Development (Part 2)
iOS Development (Part 2)
 
The java swing_tutorial
The java swing_tutorialThe java swing_tutorial
The java swing_tutorial
 
The java rogramming swing _tutorial for beinners(java programming language)
The java rogramming swing _tutorial for beinners(java programming language)The java rogramming swing _tutorial for beinners(java programming language)
The java rogramming swing _tutorial for beinners(java programming language)
 
How to dispatch redux action with timeout
How to dispatch redux action with timeoutHow to dispatch redux action with timeout
How to dispatch redux action with timeout
 
Lab1-android
Lab1-androidLab1-android
Lab1-android
 

More from john344

Some microbes can tolerate oxygen while others cannot- What do organis.pdf
Some microbes can tolerate oxygen while others cannot- What do organis.pdfSome microbes can tolerate oxygen while others cannot- What do organis.pdf
Some microbes can tolerate oxygen while others cannot- What do organis.pdfjohn344
 
st-Lab Assesment 8B Question 2.pdf
st-Lab Assesment 8B Question 2.pdfst-Lab Assesment 8B Question 2.pdf
st-Lab Assesment 8B Question 2.pdfjohn344
 
SQL is sometimes referred to as the most popular programming language.pdf
SQL is sometimes referred to as the most popular programming language.pdfSQL is sometimes referred to as the most popular programming language.pdf
SQL is sometimes referred to as the most popular programming language.pdfjohn344
 
Sorting with Linked-List Write a c++ program to read a series of integ.pdf
Sorting with Linked-List Write a c++ program to read a series of integ.pdfSorting with Linked-List Write a c++ program to read a series of integ.pdf
Sorting with Linked-List Write a c++ program to read a series of integ.pdfjohn344
 
SRG 119 HW 6- MICROBIAL GROWTH Complete the cross word by hand- scan i.pdf
SRG 119 HW 6- MICROBIAL GROWTH Complete the cross word by hand- scan i.pdfSRG 119 HW 6- MICROBIAL GROWTH Complete the cross word by hand- scan i.pdf
SRG 119 HW 6- MICROBIAL GROWTH Complete the cross word by hand- scan i.pdfjohn344
 
SQL A bookstore wants to stock mystery stories from particular publish.pdf
SQL A bookstore wants to stock mystery stories from particular publish.pdfSQL A bookstore wants to stock mystery stories from particular publish.pdf
SQL A bookstore wants to stock mystery stories from particular publish.pdfjohn344
 
Spud really likes potatoes- At best any other goods are worth less tha.pdf
Spud really likes potatoes- At best any other goods are worth less tha.pdfSpud really likes potatoes- At best any other goods are worth less tha.pdf
Spud really likes potatoes- At best any other goods are worth less tha.pdfjohn344
 
split(self) (3 points) Divides the original list in half- returning tw.pdf
split(self) (3 points) Divides the original list in half- returning tw.pdfsplit(self) (3 points) Divides the original list in half- returning tw.pdf
split(self) (3 points) Divides the original list in half- returning tw.pdfjohn344
 
Spell out the abbreviation then discuss purpose- use- and structure of.pdf
Spell out the abbreviation then discuss purpose- use- and structure of.pdfSpell out the abbreviation then discuss purpose- use- and structure of.pdf
Spell out the abbreviation then discuss purpose- use- and structure of.pdfjohn344
 
Spinal nerves and pathways of information- Define-describe the terms b.pdf
Spinal nerves and pathways of information- Define-describe the terms b.pdfSpinal nerves and pathways of information- Define-describe the terms b.pdf
Spinal nerves and pathways of information- Define-describe the terms b.pdfjohn344
 
Sphinxes are usually red- A rare purple color is recessive in both Asi.pdf
Sphinxes are usually red- A rare purple color is recessive in both Asi.pdfSphinxes are usually red- A rare purple color is recessive in both Asi.pdf
Sphinxes are usually red- A rare purple color is recessive in both Asi.pdfjohn344
 
Space --- the final frontier- So- as I am sure everyone knows- the Nat.pdf
Space --- the final frontier- So- as I am sure everyone knows- the Nat.pdfSpace --- the final frontier- So- as I am sure everyone knows- the Nat.pdf
Space --- the final frontier- So- as I am sure everyone knows- the Nat.pdfjohn344
 
Solve the problem and show the working Use the ones complement to fin.pdf
Solve the problem and show the working  Use the ones complement to fin.pdfSolve the problem and show the working  Use the ones complement to fin.pdf
Solve the problem and show the working Use the ones complement to fin.pdfjohn344
 
Southeastern Oklahoma State University's business program has the faci.pdf
Southeastern Oklahoma State University's business program has the faci.pdfSoutheastern Oklahoma State University's business program has the faci.pdf
Southeastern Oklahoma State University's business program has the faci.pdfjohn344
 
Sophia and Dorcas are sisters who share the same room- The room can ea.pdf
Sophia and Dorcas are sisters who share the same room- The room can ea.pdfSophia and Dorcas are sisters who share the same room- The room can ea.pdf
Sophia and Dorcas are sisters who share the same room- The room can ea.pdfjohn344
 
sorry for the spacing on the second half 6- Larke volvmers of nucleoti.pdf
sorry for the spacing on the second half 6- Larke volvmers of nucleoti.pdfsorry for the spacing on the second half 6- Larke volvmers of nucleoti.pdf
sorry for the spacing on the second half 6- Larke volvmers of nucleoti.pdfjohn344
 
Song saa private island- Cambodia has madesignificant progress in-sust (1).pdf
Song saa private island- Cambodia has madesignificant progress in-sust (1).pdfSong saa private island- Cambodia has madesignificant progress in-sust (1).pdf
Song saa private island- Cambodia has madesignificant progress in-sust (1).pdfjohn344
 
Someone who is an Select one- a- entrepreneurial manager b- immoral ma.pdf
Someone who is an Select one- a- entrepreneurial manager b- immoral ma.pdfSomeone who is an Select one- a- entrepreneurial manager b- immoral ma.pdf
Someone who is an Select one- a- entrepreneurial manager b- immoral ma.pdfjohn344
 
some ways in which our economies are dependent on environmental servic.pdf
some ways in which our economies are dependent on environmental servic.pdfsome ways in which our economies are dependent on environmental servic.pdf
some ways in which our economies are dependent on environmental servic.pdfjohn344
 
Some strains of the bacteria Escherichia coli readily cause bacteria U.pdf
Some strains of the bacteria Escherichia coli readily cause bacteria U.pdfSome strains of the bacteria Escherichia coli readily cause bacteria U.pdf
Some strains of the bacteria Escherichia coli readily cause bacteria U.pdfjohn344
 

More from john344 (20)

Some microbes can tolerate oxygen while others cannot- What do organis.pdf
Some microbes can tolerate oxygen while others cannot- What do organis.pdfSome microbes can tolerate oxygen while others cannot- What do organis.pdf
Some microbes can tolerate oxygen while others cannot- What do organis.pdf
 
st-Lab Assesment 8B Question 2.pdf
st-Lab Assesment 8B Question 2.pdfst-Lab Assesment 8B Question 2.pdf
st-Lab Assesment 8B Question 2.pdf
 
SQL is sometimes referred to as the most popular programming language.pdf
SQL is sometimes referred to as the most popular programming language.pdfSQL is sometimes referred to as the most popular programming language.pdf
SQL is sometimes referred to as the most popular programming language.pdf
 
Sorting with Linked-List Write a c++ program to read a series of integ.pdf
Sorting with Linked-List Write a c++ program to read a series of integ.pdfSorting with Linked-List Write a c++ program to read a series of integ.pdf
Sorting with Linked-List Write a c++ program to read a series of integ.pdf
 
SRG 119 HW 6- MICROBIAL GROWTH Complete the cross word by hand- scan i.pdf
SRG 119 HW 6- MICROBIAL GROWTH Complete the cross word by hand- scan i.pdfSRG 119 HW 6- MICROBIAL GROWTH Complete the cross word by hand- scan i.pdf
SRG 119 HW 6- MICROBIAL GROWTH Complete the cross word by hand- scan i.pdf
 
SQL A bookstore wants to stock mystery stories from particular publish.pdf
SQL A bookstore wants to stock mystery stories from particular publish.pdfSQL A bookstore wants to stock mystery stories from particular publish.pdf
SQL A bookstore wants to stock mystery stories from particular publish.pdf
 
Spud really likes potatoes- At best any other goods are worth less tha.pdf
Spud really likes potatoes- At best any other goods are worth less tha.pdfSpud really likes potatoes- At best any other goods are worth less tha.pdf
Spud really likes potatoes- At best any other goods are worth less tha.pdf
 
split(self) (3 points) Divides the original list in half- returning tw.pdf
split(self) (3 points) Divides the original list in half- returning tw.pdfsplit(self) (3 points) Divides the original list in half- returning tw.pdf
split(self) (3 points) Divides the original list in half- returning tw.pdf
 
Spell out the abbreviation then discuss purpose- use- and structure of.pdf
Spell out the abbreviation then discuss purpose- use- and structure of.pdfSpell out the abbreviation then discuss purpose- use- and structure of.pdf
Spell out the abbreviation then discuss purpose- use- and structure of.pdf
 
Spinal nerves and pathways of information- Define-describe the terms b.pdf
Spinal nerves and pathways of information- Define-describe the terms b.pdfSpinal nerves and pathways of information- Define-describe the terms b.pdf
Spinal nerves and pathways of information- Define-describe the terms b.pdf
 
Sphinxes are usually red- A rare purple color is recessive in both Asi.pdf
Sphinxes are usually red- A rare purple color is recessive in both Asi.pdfSphinxes are usually red- A rare purple color is recessive in both Asi.pdf
Sphinxes are usually red- A rare purple color is recessive in both Asi.pdf
 
Space --- the final frontier- So- as I am sure everyone knows- the Nat.pdf
Space --- the final frontier- So- as I am sure everyone knows- the Nat.pdfSpace --- the final frontier- So- as I am sure everyone knows- the Nat.pdf
Space --- the final frontier- So- as I am sure everyone knows- the Nat.pdf
 
Solve the problem and show the working Use the ones complement to fin.pdf
Solve the problem and show the working  Use the ones complement to fin.pdfSolve the problem and show the working  Use the ones complement to fin.pdf
Solve the problem and show the working Use the ones complement to fin.pdf
 
Southeastern Oklahoma State University's business program has the faci.pdf
Southeastern Oklahoma State University's business program has the faci.pdfSoutheastern Oklahoma State University's business program has the faci.pdf
Southeastern Oklahoma State University's business program has the faci.pdf
 
Sophia and Dorcas are sisters who share the same room- The room can ea.pdf
Sophia and Dorcas are sisters who share the same room- The room can ea.pdfSophia and Dorcas are sisters who share the same room- The room can ea.pdf
Sophia and Dorcas are sisters who share the same room- The room can ea.pdf
 
sorry for the spacing on the second half 6- Larke volvmers of nucleoti.pdf
sorry for the spacing on the second half 6- Larke volvmers of nucleoti.pdfsorry for the spacing on the second half 6- Larke volvmers of nucleoti.pdf
sorry for the spacing on the second half 6- Larke volvmers of nucleoti.pdf
 
Song saa private island- Cambodia has madesignificant progress in-sust (1).pdf
Song saa private island- Cambodia has madesignificant progress in-sust (1).pdfSong saa private island- Cambodia has madesignificant progress in-sust (1).pdf
Song saa private island- Cambodia has madesignificant progress in-sust (1).pdf
 
Someone who is an Select one- a- entrepreneurial manager b- immoral ma.pdf
Someone who is an Select one- a- entrepreneurial manager b- immoral ma.pdfSomeone who is an Select one- a- entrepreneurial manager b- immoral ma.pdf
Someone who is an Select one- a- entrepreneurial manager b- immoral ma.pdf
 
some ways in which our economies are dependent on environmental servic.pdf
some ways in which our economies are dependent on environmental servic.pdfsome ways in which our economies are dependent on environmental servic.pdf
some ways in which our economies are dependent on environmental servic.pdf
 
Some strains of the bacteria Escherichia coli readily cause bacteria U.pdf
Some strains of the bacteria Escherichia coli readily cause bacteria U.pdfSome strains of the bacteria Escherichia coli readily cause bacteria U.pdf
Some strains of the bacteria Escherichia coli readily cause bacteria U.pdf
 

Recently uploaded

ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxannathomasp01
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxPooja Bhuva
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsKarakKing
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxPooja Bhuva
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxJisc
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 

Recently uploaded (20)

ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 

Software Design Problem (7 marks) Suppose you are working as part of a.pdf

  • 1. Software Design Problem (7 marks) Suppose you are working as part of a design team to create a event capability. An event, is synchronization object very like a binary semaphore. It can be in two states: SET and RESET. There are two differences. First, events must be manually reset. Second, when an event is signalled, all threads blocked on that event will unblock. A thread can block on an event using Wait if it is in the RESET state (a call to Wait if it is in the SET state will simply return). When the event becomes SET after a call to Set, the block will end, but the event will remain SET until explicitly Reset. The operating system currently uses counted (ie: standard) semaphores as its only synchronization tool: class Semaphore i // This is a counted senaldicte public: Semaphore (int initialCount): - Semaphore (); void Signal(); void wait(); 1; Figure 1: Exis as resources Provide a design for a new class Event. As you can see in the figure, Event has five public functions: a constructor, Set, Reset, Wait and a destructor. Make sure your answer includes implementations for each of them. As usual, I will accept any plausible format (code, pseudocode, diagrams, stories, etc) BUT make sure you make reference to the features of the existing OS (Figure 1) as you use them so the operation is clear. You can add whatever data members to the class you need to make it work.