Potpourri_2 Potpourri 2.  [2 points] (Answer True/False with…

Potpourri_2 Potpourri 2.  [2 points] (Answer True/False with justification)  In a fully virtualized environment, the hypervisor uses the Physical Page Number (PPN) generated by the Guest Operating system to index into the Shadow Page Table and map it to the corresponding Machine Physical Number (MPN).

Parallel_Systems_4c M.E.Lock The context for this question i…

Parallel_Systems_4c M.E.Lock The context for this question is the same as the previous question. 4. Consider the following lock algorithm: while ((L == locked) or (T&S(L) == locked)) {    while (L == locked); // spin    delay (d[Pi]); // different delays for different processors  }  // success if we are here    c. [2 points] What are the program characteristics that would enhance the program’s performance with this lock algorithm implementation? In what way does it improve performance?

Parallel_Systems_5b M.E.Lock The context for this question i…

Parallel_Systems_5b M.E.Lock The context for this question is the same as the previous question. 5. Consider the ticket lock algorithm from lecture 4 (slide 108): b. [1.5 points] What are the downsides of the ticket lock algorithm for systems with write-update cache coherence? Briefly explain your answer.

Potpourri_6c Potpourri The context for this question is the…

Potpourri_6c Potpourri The context for this question is the same as the previous question. 6. I/O ring data structures can be used to facilitate data transfer between paravirtualized guest OSs and the hypervisor. Consider a guest OS making a hypercall to the hypervisor to write some data to disk. The process begins with the guest making the write request, followed by the hypervisor processing the request and responding. Finally, the guest consumes this response. Now consider an I/O ring that is used by a paravirtualized guest OS to send network requests and to receive corresponding responses. At time 0, the guest enqueues requests A, B, and C in that order. The hypervisor receives the responses corresponding to A, B, and C from the network at times shown in the table below:  Response ID  Time when response received by hypervisor  A  100 ms  B  10 ms  C  60 ms   Assume that it takes a negligible amount of time for the guest/hypervisor to enqueue requests/responses to the I/O ring.      c. [1 point] How long from time zero does it take for the first response to be available to the guest OS? 

Virtualization_3 Memory Management 3. [4 points] There are t…

Virtualization_3 Memory Management 3. [4 points] There are two guest OSes (OS1 and OS2) running on top of the hypervisor. Assume that vpn1 of OS1 and vpn2 of OS2 are mapped to the same machine page (mpn1) through VM oblivious page sharing. A process in OS2 attempts to write to vpn2.  List the actions that ensue as a result.

Virtualization_2 Full Virtualization 2. [4 points] In a full…

Virtualization_2 Full Virtualization 2. [4 points] In a fully virtualized environment, consider the following:  Two VMs are currently running. VM1 has 3 processes running; VM2 has 4 processes running.    Assume the size of the hardware page table is 1 MB.    What is the total memory overhead incurred by the Hypervisor for the above configuration? Show your work for any credit.

Parallel_Systems_4b M.E.Lock The context for this question i…

Parallel_Systems_4b M.E.Lock The context for this question is the same as the previous question. 4. Consider the following lock algorithm: while ((L == locked) or (T&S(L) == locked)) {    while (L == locked); // spin    delay (d[Pi]); // different delays for different processors  }  // success if we are here    b. [2 points] What are the program characteristics that would negatively impact the program’s performance with this lock algorithm implementation? In what way does it reduce performance? 

Parallel_Systems_5a M.E.Lock 5. Consider the ticket lock alg…

Parallel_Systems_5a M.E.Lock 5. Consider the ticket lock algorithm from lecture 4 (slide 108): a. [2 points] Compared with the lock algorithm with delay in a previous question, what is the advantage of ticket lock’s different method of determining the amount of delay? From a programmer’s perspective what is the added value of this algorithm compared to the lock algorithm with delay in the previous question? 

OS_Structure_1c Spin_and_Exokernel   The context for this qu…

OS_Structure_1c Spin_and_Exokernel   The context for this question is the same as the previous question. Exokernel uses a linear vector of time slots (or time quantum) to allot time for library OSes executing on top of Exokernel. Currently there are two library OSes running on top of the Exokernel.  OS1 is running a CPU-intensive long running ML training application  OS2 is running an interactive gaming application    c. [2 points] How does Exokernel maintain fairness for CPU time consumed by library OSes.