Мобильность кода

редактировать

В распределенных вычислениях, мобильность кода - это возможность запуска программ, кода или объектов, которые должны быть перенесены (или перемещены) из одна машина или приложение на другую. Это процесс перемещения мобильного кода через узлы сети сети в отличие от распределенных вычислений, при которых перемещаются данные.

В распределенных системах распространено требование перемещения кода или процессов между частями системы вместо данных.

Примеры мобильности кода включают сценарии, загружаемые по сети (например, JavaScript, VBScript ), Java-апплеты, элементы управления ActiveX, Flash-анимация, фильмы Shockwave (и Xtras) и макросы, встроенные в документы Microsoft Office.

Содержание
  • 1 Обзор
  • 2 Реализации
  • 3 Вирусы
  • 4 Код аренды
  • 5 См. Также
  • 6 Ссылки
Обзор

Целью мобильности кода является поддержка сложных операций. Например, приложение может отправить объект на другую машину, и объект может возобновить выполнение внутри приложения на удаленной машине с тем же состоянием, что и в исходном приложении.

Согласно классификации, предложенной Fuggetta, Picco и Vigna, мобильность кода может быть сильной или слабой: сильная мобильность кода включает перемещение как кода, так и данных и состояния выполнения с одного хоста. к другому, в частности, через образ процесса (это важно в тех случаях, когда запущенное приложение должно поддерживать свое состояние при переходе от хоста к хосту), в то время как слабая мобильность кода предполагает перемещение только кода и данных. Следовательно, может потребоваться перезапустить выполнение программы на целевом хосте.

В рамках мобильности кода существует несколько парадигм или архитектурных стилей:

  • Удаленная оценка - клиент отправляет код на удаленный компьютер для выполнения.
  • Код по запросу - клиент загружает код с удаленной машины для локального выполнения.
  • Мобильные агенты - объекты или код с возможностью автономной миграции между машинами.
Реализации

В рамках мобильности кода парадигма мобильного агента имеет обычно вызывали наибольший интерес и исследования, однако некоторые недавние работы привели к созданию универсальных реализаций.

Фреймворки мобильных агентов

Мобильный код также может быть инкапсулирован или встроен в другие форматы файлов, которые традиционно не связаны с исполняемым кодом. Примером этой формы инкапсуляции является наличие JavaScript в PDF.

Вирусы

Мобильный код также может загружаться и выполняться на клиентской рабочей станции по электронной почте. Мобильный код может загружаться через вложение электронной почты (например, макрос в файле Word) или через тело электронной почты в формате HTML (например, JavaScript). Например, вирусы / черви в электронных письмах ILOVEYOU, TRUELOVE и AnnaK были реализованы в виде мобильного кода (VBScript во вложении электронной почты в формате.vbs, выполняемом в Windows Scripting Host). Практически во всех ситуациях пользователь не знает, что мобильный код загружается и выполняется на его рабочей станции.

Код аренды

Мобильный код также относится к коду, «используемому для аренды», способу сделать программные пакеты более доступными. т.е. использовать по запросу. Это особенно актуально для разрабатываемых мобильных устройств, которые представляют собой сотовые телефоны, КПК и т. Д. Все в одном. Вместо установки пакетов программного обеспечения их можно «сдавать в аренду» и оплачивать по факту использования.

См. Также
Ссылки
  1. ^ Фуггетта, Альфонсо; Джан Пьетро Пикко; Джованни Винья (1998). «Понимание мобильности кода». IEEE Transactions по разработке программного обеспечения. 24 (5): 342–361. CiteSeerX 10.1.1.20.3442. doi : 10.1109 / 32.685258. ISSN 0098-5589. Проверено 29 июля 2009 г.
  2. ^Доктор Лори Браун. "Безопасность мобильного кода". Академия Сил обороны Австралии. Архивировано из оригинала 3 апреля 2012 г. Получено 23 апреля 2012 г.
  3. ^Карзанига, Антонио; Джан Пьетро Пикко; Джованни Винья (2007). Код все еще движется? Оглядываясь назад на десятилетие мобильности кода. ICSE COMPANION '07 Сборник материалов 29-й Международной конференции по разработке программного обеспечения. Вашингтон, округ Колумбия, США: Компьютерное общество IEEE. С. 9–20. CiteSeerX 10.1.1.119.5295. DOI : 10.1109 / ICSECOMPANION.2007.44. ISBN 978-0-7695-2892-2.
  4. ^«Mobility-RPC - Бесшовная мобильность кода и RPC для платформы Java». Проверено 15 июня 2012 г.
  5. ^«Mobile-C: многоагентная платформа для мобильных агентов C / C ++». Проверено 15 июня 2012 г.
  6. ^«Спецификация Acrobat JavaScript» (PDF). Проверено 18 ноября 2009 г.
Последняя правка сделана 2021-05-15 13:39:46
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте