Characteristic Heterogeneous migration. Migration between machines differing in processor and OS. Traditional process migration requires homogeneous environment. Asynchronous migration. An user and other threads can instruct migration anytime. cf. Code translation based system fixes the timing at the translate time, generally at the compile time. Synchronous migration, which is migration by itself (e.g.goTo(destination)), can also be carried out. Classes are automatically transferred. Classes required by migratory threads are supplied to them via network. We don't have to install the classes to each machine. Cannot work with existent JIT compilers. Async. migration requires nonpreemptive scheduling of threads. In other words, needs GreenThreads.