CSCI 3000
Spring 2017
Practice Questions for Exam 3

  1. What is DMA (Direct Memory Access)? Answer

  2. What is an advantage of DMA over letting the main processor communicate directly with an I/O device? Answer

  3. What is memory-mapped I/O? Answer

  4. Can a mutex be thought of as a resource? If so, how? If not, why not? Answer

  5. How can you detect that a deadlock has occurred from a resource allocation graph? Answer

  6. A resource class is a collection of identical resources. What is the definition of a safe state in a system with resource classes? Answer

  7. An operating system can avoid deadlock by keeping the system in a safe state. What information about each process does the operating system need to do that? Answer

  8. A resource class is a collection of identical resources. Two problems concerning deadlock with resource classes are (1) detecting that a deadlock has occurred, and (2) detecting whether a state is safe. Both problems can be solved by algorithms that have the same general structure. Both algorithms consist of running a basic phase until the answer is found. What is involved in a basic phase? Answer

  9. A system has two processes and 3 identical resources (in a single resource class). Each process needs a maximum of 2 resourses. Is deadlock possible? Explain. Answer

  10. What is spooling? Answer

  11. A financial transaction system works as follows. Each line lists two accounts, A and B. It also gives an amount of money to be transferred from account A to account B. Each processor from a group of processors reads a line and removes it from the list of transactions. The processor completes the transaction by: locking A, locking B, performing the transfer, unlocking B, unlocking A.

    1. Can this lead to deadlock?
    2. Describe a modified way to process a transaction that prevents deadlock.
    Answer

  12. What is the difference between deadlock and livelock? Answer

  13. Is there a solution to the readers/writers problem that avoids reader starvation and writer starvation but still allows concurrent reads? Answer

  14. What is a strong motivation for making hypervisor software small? Answer

  15. What is the difference between a type 1 hypervisor and a type 2 hypervisor? Answer

  16. Give an advantage of a type 1 hypervisor over a type 2 hypervisor. Answer

  17. Give a reason why a data center might want to migrate a virtual machine from one physical machine to another. Answer

  18. What is the safety requirement for virtualization identified by Popek and Goldberg? Answer

  19. What is the fidelity requirement for virtualization identified by Popek and Goldberg? Answer

  20. What is the efficiency requirement for virtualization identified by Popek and Goldberg? Answer

  21. Does an operating system that is running on a virtual machine run in kernel mode? Why or why not? Answer

  22. What is VT (Virtualization Technology)? What does it do? Answer

  23. How can using VT lead to slower execution times than translation-based approaches to virtualization? Answer

  24. An operating system can test whether it is running in kernel mode or not. If it runs in kernel mode when it runs directly on hardware, but runs in user mode when running on a virtual machine, how can the fidelity requirement be met? Is that something that cannot be simulated faithfully? Answer

  25. What is the difference between full virtualization and paravirtualization? Answer

  26. A processor that supports virtual memory has a register that is set to hold the address of the page table. If an operating system is running on a virtual machine, which software installs the page table address into the processor's page table register, the operating system or the hypervisor?

    Answer