Мобільні агенти і обчислення
Сервер агента(Agent Server) - для даного сайта це програма, яка приймає код агента по мережі, виконує його і забезпечує агента локальними даними.
Команда стрибка(Hop instruction) - використовується агентами, щоб пересунутися з одної машини до наступної. Ця команда має, як параметри, сервер агента, код агента, і його Suitcase. Агент і Suitcase відсилаються до сервера агента для виконання.
Нарешті, агент – це визначений користувачем код, Suitcase та Briefcase. Всі потреби агентів в даних повинні бути задоволені тим, що знаходиться в чемодані або в параметрах Бріфінга. На кожному сайті, агент перевіряє Briefcase і чемодан, щоб з’ясувати свою наступну поведінку. Після виконання деяких завдань на одному сайті, звичайно виконується команда стрибка для пересунення до наступної машини.
Якщо агент має інтерфейс користувача, то перед стрибком виконується копіювання відповідного графу даних, зберігається в чемодані і відновлюється на новому місці.
Як вже було сказано, агент визначається кодом, Suitcase’ом та Briefcase’ом: Suitcase мандрує з агентом від сайту до сайту, в той час, як свіжий Briefcase забезпечується в кожному новому місці сервером агента. Агенти пересуваються від машини до машини за допомогою виконання команди стрибка:
let rec agent =
proc(siutcase, briefcase)
(* працювати на поточному сайті *)
(* вирішити, куди піти далі *)
hop(nextSite, agent, siutcase);
(* виконати agent на nextSite з siutcase *)
end;
Як бачимо, агент являє собою процедуру, яка має два параметри. Siutcase і Briefcase – це довільні дані, в якості яких зручно використовувати об'єкти. Кожний агент відповідає за зміст чемодана, і кожний сервер агента відповідає за зміст briefcase’а. Сервери агентів є простими обчислювальними програмами-серверами, і їх головним завданням є виконання агентів і забезпечення їх відповідними інструкціями. Ще однією функцією сервера агента може бути перевірка “вірчих грамот” агента, тобто його ідентифікація.
Visual Obliq - це середовище для швидкого створення програм з інтерфейсом користувача. Воно складається з:
• Інтерактивного конструктора, який дозволяє швидко створити і запрограмувати інтерфейс користувача, при чому генерація коду на Obliq відбувається автоматично.• Системи run-time підтримки, яка складається з бібліотек і мережевих сервісів.
Примусити програму мігрувати до нового сайту можна за допомогою виконання команди переміщення. Для переміщення програми на інший сайт треба виконати одну з наступних команд:
• MigrateTo(Host)
• MigrateToServer(ServerName, Host)
Перша команда переміщує програму до сервера агента по замовчанню під назвою VOMigrate, на машину з назвою Host. VOMigrate продовжує виконання програми з того місця, де воно було перерване, і не забезпечує агента новими інструкціями. Таке переміщення є достатнім для найпростішого переміщення програми.