Here are some examples:
Java's support for introspection allows for a lot of traditional system tasks to be supported through user-level Java programs. Is it possible to write Java code to perform task migration and checkpointing by just restricting oneself to Java language features?
Sun has developed virtual machines (such as KVM) that minimizes the footprint of Java programs. The target platform for such VMs are portable devices such as PalmPilots. Is there an automatic way of configuring a VM to adapt to the target platform and minimize its size? Also, is it possible to develop paging mechanisms to a centralized server to minimize the transient resource requirements?