Mesa (reading question)
Please submit your response on Gradescope by Monday, April 10, 2023, 3pm PST.
-
Explain from the Mesa paper: “… while any procedure suitable for forking can also be called sequentially, the converse is not generally true.”
-
Consider the memory allocation code in the Mesa paper.
- The paper states this code has a bug. What is it and what is the fix?
- Intuitively, how would you change this code to work with Hoare wakeup semantics?
- What happens if we make EXPAND an ENTRY routine?
- What happens if we make the WAIT call just put the current thread at the end of the run queue?
- Give the main monitor invariant for this code.