CSSE 490-04 -- Dynamic Storage Reclamation

Homework 15: Project milestone 2

  1. Complete the assigned reading for the next session. If you have not completed the reading from the previous session you are advised to do so. See the course schedule for details.
  2. (40 pts)You should have installed your JVM by now and are ready to explore it. Each JVM has its object layout, ways to interpret and execute programs written in the language it supports and a memory management toolkit to handle memory management for programs written in that language.

    1. Explore the JVM you installed on your system and describe its object layout.
      1. Be careful to list some of the fields, include meta-data fields, that each instance of an object in that language contains.
      2. Describe the function/purpose of at least two meta-data fields.
    2. What specific instructions do I enter at the prompt to interpret a Java program, say testProgram.java?
      1. What instructions do I enter to run it?
    3. Explore the memory management toolkit of your JVM and answer the following questions:
      1. What is the default garbage collector implemented in the JVM? Are there other garbage collectors? List them.
      2. Describe the framework in which the garbage collectors are implemented.
      3. How easy or difficult is it to run your programs, selecting a different garbage collector? Explain.
      4. How does one add a new garbage collector to the memory management toolkit?
  3. Submit your report on the course Angel page. The drop box for your submission is located under Lessons → Project → Milestone 2 Drop Box.