Investigate Dynamic Storage in Your Cadaver
Next: About this document
Up: Assignment 5: Dynamic Storage
Previous: Make some measurements
Study the way dynamic storage management is done in your cadaver
compiler and relate it to the material discussed in class. (If you
used your cadaver for the experiemnt above, relate the results to what
you learn by reading the code or documentation). Following are some
examples of issues that would be interesting to discuss. You should
add any others that you discover or that you think are relevant.
What language features in the source language for your cadaver use
dynamic storage allocation that is not stack-based? (If none,
answer the questions for some compiler you have used in other
classwork that does have some sort of dynamic storage management.)
Explain how allocation is done (if via malloc, investigate the
implementation that is actually used - don't just rely on what Zorn
Explain how storage re-use is achieved.
Is there a way to monitor the performance of dynamic storage system on
the programs you run? Explain. Is there a way to tune the
performance for a given application? If so, how?
Give an example of a program that would behave badly under the
dynamic storage mechanism(s) available for the cadaver.
How could the dynamic storage aspects of the cadaver be improved, and
how easy would it be to replace the current dynamic storage system
with a different one?
Wed Nov 1 15:20:56 PST 1995