\begin{abstract}
In this paper we outline some potential applications of
resource aware scheduling to high performance metacomputing
applications and describe requirements associated with the
use of mobility for resource-aware scheduling.
Programs that use mobility as a mechanism to adapt to resource changes
have three requirements that are not shared with other mobile
programs. First, they need to monitor the level and quality of
resources in their operating environment.  Second, they need to be
able to react to changes in resource availability. Third, they need to
be able to control the way in which resources are used on their behalf
(by libraries and other support code). In this paper, we describe
the design and implementation of Sumatra, an extension of Java that
supports resource-aware mobile programs. We also describe the design
and implementation of a distributed resource monitor that provides the
information required by Sumatra programs.
Finally, we present a prototype resource-aware data intensive
program that combines and composes weather images from
multiple geographically-distributed sources.

\end{abstract}
