Code Mobility - Overview

Overview

The purpose of code mobility is to support sophisticated operations. For example an application can send an object to another machine, and the object can resume executing inside the application on the remote machine with the same state as it had in the originating application.

Code mobility can be either Strong or Weak
  • Strong code mobility involves moving the code, data and the execution state from one host to another. This is important in cases where the running application needs to maintain its state as it migrates from host to host.
  • Weak code mobility involves moving the code and the data only. This may necessitate restarting the execution of the program at the destination host.
Several paradigms, or architectural styles, exist within code mobility
  • Remote evaluation — A client sends code to a remote machine for execution.
  • Code on demand — A client downloads code from a remote machine to execute locally.
  • Mobile agents — Objects or code with the ability to migrate between machines autonomously.

Read more about this topic:  Code Mobility