En computación distribuida , la movilidad del código es la capacidad de migrar (o mover) programas , código u objetos en ejecución de una máquina o aplicación a otra. [ 1 ] Este es el proceso de mover código móvil a través de los nodos de una red , a diferencia de la computación distribuida, donde se mueven los datos .
En los sistemas distribuidos es práctica común requerir el movimiento de código o procesos entre partes del sistema, en lugar de datos. [ 1 ]
Ejemplos de movilidad de código incluyen scripts descargados a través de una red (por ejemplo, JavaScript , VBScript ), applets de Java , controles ActiveX , animaciones Flash , películas Shockwave (y Xtras) y macros incrustadas en documentos de Microsoft Office . [ 2 ]
Descripción general
El objetivo de la movilidad del código es dar soporte a operaciones sofisticadas. Por ejemplo, una aplicación puede enviar un objeto a otra máquina, y dicho objeto puede reanudar su ejecución dentro de la aplicación en la máquina remota con el mismo estado que tenía en la aplicación de origen.
Según una clasificación propuesta por Fuggetta, Picco y Vigna, [ 1 ] la movilidad del código puede ser fuerte o débil: la movilidad fuerte del código implica mover tanto el código , los datos como el estado de ejecución de un host a otro, especialmente a través de una imagen de proceso (esto es importante en los casos en que la aplicación en ejecución necesita mantener su estado mientras migra de un host a otro), mientras que la movilidad débil del código implica mover solo el código y los datos. Por lo tanto, puede ser necesario reiniciar la ejecución del programa en el host de destino.
Existen varios paradigmas o estilos arquitectónicos dentro de la movilidad del código: [ 1 ]
- Evaluación remota : Un cliente envía código a una máquina remota para su ejecución.
- Código bajo demanda : un cliente descarga código de una máquina remota para ejecutarlo localmente.
- Agentes móviles : objetos o código con la capacidad de migrar entre máquinas de forma autónoma.
virus
El código móvil también puede descargarse y ejecutarse en la estación de trabajo del cliente a través del correo electrónico. Puede descargarse mediante un archivo adjunto (por ejemplo, una macro en un archivo de Word) o mediante el cuerpo del correo electrónico en formato HTML (por ejemplo, JavaScript). Por ejemplo, los virus/gusanos ILOVEYOU , TRUELOVE y AnnaK se implementaron como código móvil (VBScript en un archivo adjunto .vbs que se ejecutaba en Windows Scripting Host). En casi todos los casos, el usuario desconoce que se está descargando y ejecutando código móvil en su estación de trabajo.
Código de alquiler
El código móvil también se refiere al código "alquilado", una forma de abaratar los paquetes de software, es decir, de usarlos bajo demanda. Esto es especialmente relevante para los dispositivos móviles en desarrollo, que combinan teléfonos celulares, PDA, etc. En lugar de instalar paquetes de software, estos se pueden "alquilar" y pagar según su uso.
Véase también
Referencias
- 1 2 3 4 Fuggetta, Alfonso; Gian Pietro Picco; Giovanni Vigna (1998). "Understanding Code Mobility" . IEEE Transactions on Software Engineering . 24 (5): 342– 361. CiteSeerX 10.1.1.20.3442 . doi : 10.1109/32.685258 . ISSN 0098-5589 . Recuperado el 29 de julio de 2009 .
- ↑ Dr. Lawrie Brown. "Seguridad del código móvil" . Academia de las Fuerzas de Defensa Australianas. Archivado del original el 3 de abril de 2012. Consultado el 23 de abril de 2012 .
- Arquitectura de computación distribuida
- Tipos de malware