Get premium membership and access questions with answers, video lessons as well as revision papers.
Deadlock prevention is theorized on the basis that if one nullifies one of the four conditions for deadlock
to occur (mutual exclusion, hold and wait, circular wait and no preemption), a deadlock cannot occur.
Attacking mutual exclusion and no preemption has no practical basis, so we commonly prevent the
circular wait condition. We do this by globally numbering all resources. (e.g. Blu-Ray drive #1 and
USB Hard Drive #2). At every instant – one of the processes will have the highest numbered resource.
The process holding it will never ask for a lower one, because we only allow processes to access higher
numbered resources. Eventually it will finish and free all its resources. All processes can finish.
Titany answered the question on April 26, 2022 at 09:45
- What must the banker's algorithm know a priori in order to prevent deadlock?(Solved)
What must the banker's algorithm know a priori in order to prevent deadlock?
Date posted: April 26, 2022. Answers (1)
- Assuming the operating system detects the system is deadlocked, what can the operating
system do to recover from deadlock?(Solved)
Assuming the operating system detects the system is deadlocked, what can the operating
system do to recover from deadlock?
Date posted: April 26, 2022. Answers (1)
- What are the four conditions required for deadlock to occur?(Solved)
What are the four conditions required for deadlock to occur?
Date posted: April 26, 2022. Answers (1)
- What is deadlock? What is starvation? How do they differ from each other?(Solved)
What is deadlock? What is starvation? How do they differ from each other?
Date posted: April 26, 2022. Answers (1)
- What are monitors and condition variables?(Solved)
What are monitors and condition variables?
Date posted: April 26, 2022. Answers (1)
- Describe how to implement a lock using semaphores(Solved)
Describe how to implement a lock using semaphores
Date posted: April 26, 2022. Answers (1)
- A semaphore is a blocking synchronisation primitive. Describe how they work with the
aid of pseudo-code. You can assume the existance of a thread_block() and a...(Solved)
A semaphore is a blocking synchronisation primitive. Describe how they work with the
aid of pseudo-code. You can assume the existance of a thread_block() and a thread_wakeup()
function
Date posted: April 26, 2022. Answers (1)
- What is the producer consumer problem? Give an example of its occurrence in operating systems(Solved)
What is the producer consumer problem? Give an example of its occurrence in operating systems
Date posted: April 26, 2022. Answers (1)
- What is a test-and-set instruction? How can it be used to implement mutual exclusion?
Consider using a fragment of psuedo-assembly language aid you explanation(Solved)
What is a test-and-set instruction? How can it be used to implement mutual exclusion?
Consider using a fragment of psuedo-assembly language aid you explanation
Date posted: April 26, 2022. Answers (1)
- Interrupt disabling and enabling is a common approach to implementing mutual exclusion,
what are its advantages and disadvantages?(Solved)
Interrupt disabling and enabling is a common approach to implementing mutual exclusion,
what are its advantages and disadvantages?
Date posted: April 26, 2022. Answers (1)
- Why is turn passing a poor solution to the critical sections problem?(Solved)
Why is turn passing a poor solution to the critical sections problem?
Date posted: April 26, 2022. Answers (1)
- What are three requirements of any solution to the critical sections problem? Why are the
requirements needed?(Solved)
What are three requirements of any solution to the critical sections problem? Why are the
requirements needed?
Date posted: April 26, 2022. Answers (1)
- What is a critical region? How do they relate to controlling access to shared resources?(Solved)
What is a critical region? How do they relate to controlling access to shared resources?
Date posted: April 26, 2022. Answers (1)
- What is a race condition? Give an example(Solved)
What is a race condition? Give an example
Date posted: April 26, 2022. Answers (1)
- Context switching between two threads of execution within the operating system is
usually performed by a small assembly language function. In general terms, what does this
small...(Solved)
Context switching between two threads of execution within the operating system is
usually performed by a small assembly language function. In general terms, what does this
small function do internally?
Date posted: April 26, 2022. Answers (1)
- Enumerate the advantages and disadvantages of supporting multi-threaded applications
with kernel-level threads(Solved)
Enumerate the advantages and disadvantages of supporting multi-threaded applications
with kernel-level threads
Date posted: April 26, 2022. Answers (1)
- Why are user-level threads packages generally cooperatively scheduled?(Solved)
Why are user-level threads packages generally cooperatively scheduled?
Date posted: April 26, 2022. Answers (1)
- Name some advantages and disadvantages of user-level threads(Solved)
Name some advantages and disadvantages of user-level threads
Date posted: April 26, 2022. Answers (1)
- Describe how a multi-threaded application can be supported by a user-level threads package. It may be helpful to consider (and draw) the components of such...(Solved)
Describe how a multi-threaded application can be supported by a user-level threads package. It may be helpful to consider (and draw) the components of such a package, and the function they perform
Date posted: April 26, 2022. Answers (1)
- What is a process? What are attributes of a process?(Solved)
What is a process? What are attributes of a process?
Date posted: April 26, 2022. Answers (1)