Computer network research has recently focused on the feasibility of runnin
g mobile code on the intermediate nodes that forward packets through a netw
ork. A network that exploits mobile code in this way is called an active ne
twork because the network's packet delivery service is programmable, rather
than fixed. Active networking is just one example of a class of systems th
at exploit liquid software-low-level, communication-oriented code that easi
ly flows from machine to machine.
This article describes a Java-based platform for liquid software, called Jo
ust, that is specifically designed to support low-level, communication-orie
nted systems and to avoid the limitations of general-purpose OSs. The autho
rs contrast the platform requirements for communication-oriented liquid sof
tware with those of computation-oriented software, identify the limitations
of current platforms, and outline the benefits of Joust. They also offer a
n overview of Scout (the underlying OS upon which Joust is built), its runt
ime system,and its just-in-time (JIT) compiler.