LRPC and Scheduling The context for this question is the same as the previous question. A server provides the following procedure via LRPC uint64_t sum_array(const uint64_t *arr, size_t len) { uint64_t sum = 0; for (size_t i = 0; i < len; ++i) { sum += arr[i]; } return sum;} The kernel will create an A-stack and map that into the client and server address spaces. Assume the following: (uint64_t is 8 bytes and size_t is 4 bytes) There is programming language support for the server to access the A-stack directly. [2 points] During the actual call what is the action on the client side so far as A-stack is concerned?
Blog
Potpourri The context for this question is the same as the p…
Potpourri The context for this question is the same as the previous question. Figure shows I/O is virtualized in Cellular-Disco. [2 points] What does CD do in step 5 and why?
Potpourri The context for this question is the same as the p…
Potpourri The context for this question is the same as the previous question. Answer the following questions with respect to the MCS barrier algorithm: [2 points] (Answer True/False with justification) (No credit without justification) The MCS algorithm works equally well on a shared memory multiprocessor as well as a cluster of processors with no physically shared memory.
Potpourri The context for this question is the same as the p…
Potpourri The context for this question is the same as the previous question. Answer the following questions with respect to the MCS barrier algorithm: [3 points] (Answer True/False with justification) (No credit without justification) The algorithm will not work on an NCC-NUMA machine.
Lock/Barriers The context for this question is the same as t…
Lock/Barriers The context for this question is the same as the previous question. [1 point] What is the minimum number of additional processors that would warrant a Round 3?
Tornado The context for this question is the same as the pre…
Tornado The context for this question is the same as the previous question. [2 points] How might Tornado decide to implement “Region” objects shown in the figure?
Muscle, bone, water, and organs are all considered component…
Muscle, bone, water, and organs are all considered components of fat-free mass.
Potpourri Consider the following lock algorithm using T&S: w…
Potpourri Consider the following lock algorithm using T&S: 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 [2 points] (Answer True/False with justification) (No credit without justification) This algorithm does not rely on hardware cache coherence.
Paravirtualization The context for this question is the same…
Paravirtualization The context for this question is the same as the previous question. Above picture shows the I/O ring data structure used in Xen to facilitate communication between the guest OS and Xen. Guest-OS places a request in the I/O ring using the “Request Producer” pointer. Xen places a response in the I/O ring using the “Response Producer” pointer. [2 points] Why does Xen typically not run out of space to place a response on this ring? State the invariant briefly.
LRPC and Scheduling The context for this question is the sam…
LRPC and Scheduling The context for this question is the same as the previous question. A server provides the following procedure via LRPC uint64_t sum_array(const uint64_t *arr, size_t len) { uint64_t sum = 0; for (size_t i = 0; i < len; ++i) { sum += arr[i]; } return sum;} The kernel will create an A-stack and map that into the client and server address spaces. Assume the following: (uint64_t is 8 bytes and size_t is 4 bytes) There is programming language support for the server to access the A-stack directly. [2 points] Prior to executing the server procedure, what is the action on the server side so far as A-stack is concerned?