(6 Marks) Question 1. Briefly outline the role of the Process Control Block (PCB), listing and describing three pieces of information an Operating System might choose to store in the PCB.
(4 marks) Question 2. If we assume that when processes are interrupted they are placed in a queue containing all non-running processes not waiting for an I/O operation to complete, briefly describe two strategies the Operating System might adopt to service that queue. One-word answers will not suffice.
(5 marks) Question 3. Outline a mechanism by which counting semaphores could be implemented using the minimal number of binary semaphores and ordinary machine instructions. Include C or pseudo code snippets if you feel this will make your answer clearer and/or more concise.
(4 marks) Question 4. Define the terms “race condition”, “deadlock”, and “starvation” as they relate to Operating System design and outline the relationship between deadlock and starvation.
(6 marks) Question 5. Can the “priority inversion” problem outlined in section (3) of the background information to Lab 2 occur if user-level threads are used instead of kernel-level threads? Explain your answer.
UCSC BSOE CMPS111 Spring 2018 Homework 2 Copyright © 2017-2018 David C. Harrison. All rights reserved.