Problem Set 2
Assigned: Tuesday, September 1
Due: Tuesday, September 8 (noon)
20 Points
Please
submit
your answers in PDF format via email to kafura@cs.vt.edu.
1. Capriccio
(a) (2 points) Capriccio is a cooperative thread management system. What does this mean?
(b) (3 points) Does it make sense to implement Capriccio on a systems
providing Scheduler Activations? If not, explain why. If so, explain
what advantages are gained.
2. Capriccio stack management
Shown below is a Capriccio call graph annotated with stack frame sizes.
(a) (3 points) Show where checkpoints would be placed by Capriccio in the call graph below when MaxPath=1KB.
(b) (2 points) Using the checkpoints from part (a), how much internal wasted stack space is there for the execution sequence: Main->A->C->D->A->C->E?
(c) (3 points) Show where the checkpoint would be placed by Capriccio in the call graph below when MaxPath=1.2KB.
(d) (2 points) Using the checkpoints from part (c), how much internal wasted stack space is there for the execution sequence: Main->A->C->D->A->C->E?
3. (5 points).State three insightful questions for discussion in class
about SEDA, TAME, and/or CSP based on your reading of the papers available on our web
site.