CMSC 691X Project Report

             Mobile Agent Packages Installation under Different Operating System 
 
                                                            Sharon Xiangqun Qi
 

Introduction
 
 
                The power of agents becomes apparent when you consider that they can travel to any electronic
                 marketplace equipped to handle agents, and accomplish many tasks all on your behalf. Saving
                 you precious time and expense, by making calls, running errands and taking care of all life's little
                 details. Plus, agents can be instructed to notify you when conditions change in the marketplace
                 -- if, for example, a product you want suddenly becomes available at the price you are willing to
                 buy.

                 Odyssey is a set of Java class libraries. When incorporated in your network application, the
                 libraries enable you to erect agent-accessible places in your network, to station agents in
                 those places, and to let agents travel between places whenever they need to.

                 Odyssey is transport-independent. Whenever an agent travels from one place to another, Odyssey
                 calls upon a transport API designed by General Magic for that purpose. Odyssey comes complete
                 with implementations of the API for Sun's Remote Method Invocation (RMI).
 
 
    What is Odyssey?
 
        Odyssey is an agent system implemented as a set of Java class libraries that provide support for developing   distributed, mobile applications. Odyssey provides Java classes for agents and places. Odyssey agents are Java threads. They are created by subclassing the Odyssey agent class or the Odyssey worker class.
 
    What is an agent?

        An agent is a process that acts autonomously on behalf of a person or organization. Each agent has its               own thread of execution so that it can perform tasks on its own initiative.
 
    What is an agent system?
 
       An agent system is a platform that can create, manage, interpret, execute, transfer and terminate agents. An       agent system has the authority of the region or organization that the agent system represents. The Odyssey agent system consists of a set of Java classes to support Odyssey agents and Odyssey places.

    What is a mobile agent?
 
       A mobile agent is an agent that is not bound to the system where it begins execution. It has the unique               ability to transport itself from one system in a network to another. Odyssey agents are mobile agents,                  although not every mobile agent is required to move during its execution.
 

 Problems and Solutions   
 
    Odyssey requires either Version 1.1 of Sun's Java Development Kit (JDK) or a third-party development      environment based upon JDK 1.1.

Solution:
                    Install the LINUX red hat 5.1, which includes a netscape
                    browser. Unfortunately, it doesn't come with JDK, therefore,
                    JDK1.1.6 for LINUX is downloaded from the web, and installed
                    under LINUX.

     After the Odyssey package was installed, it always got core dumped when invoking the java interpreter.

Solution:
                    Fortunately, we have downloaded the JDK1.1.1 with JDK1.1.6,
                    therefore, JDK1.1.1 is installed instead of JDK1.1.6, and problem
                    solved.

      Install the Odyssey package under windows NT, same problem came up as under LINUX, no JDK1.1.

Solution:
                    Install the JDK1.1 for windows 95/NT.

       In order for the agents to travel, a network has to be set up.

Solution:
                    Set up a local network among several machines with both LINUX and Windows NT as operating                        system.

       Windows NT doesn't support long file names.

Solution:
                     Change file names.
 

Some Thoughts

     In addition to the Odyssey package, an other mobile agent package Voyager has been installed and tested under both operating system. The results are compatible to the Odyssey package result. In the process of installing the JDK package, it's shown that the red hat LINUX 5.1 is compatible with JDK1.1.6 while the LINUX 5.0 is compatible with JDK1.1.1. Some further tests may be carried on more than two machines at the same time. 
 

References

    http://www.genmagic.com/technology/odyssey.html
    http://www.objectspace.com/voyager/