1. Briefly describe how exceptions and interrupts are handled in Chorus, and tell why they are handled differently.
2. Chorus supports both semaphores and mutexes. Is this strictly necessary? Would it not be sufficient to support only semaphores?
3. What is the function of a mapper? 9. Briefly describe what and MpPushOut are used for.
4. Chorus supports both RPC and an asynchronous send. What is the essential difference between these two?