Results 1 - 10
of
14
The Architecture of the Ara Platform for Mobile Agents
, 1997
"... We describe a platform for the portable and secure execution of mobile agents written in various interpreted languages on top of a common run-time core. Agents may migrate at any point in their execution, fully preserving their state, and may exchange messages with other agents. One system may conta ..."
Abstract
-
Cited by 150 (2 self)
- Add to MetaCart
We describe a platform for the portable and secure execution of mobile agents written in various interpreted languages on top of a common run-time core. Agents may migrate at any point in their execution, fully preserving their state, and may exchange messages with other agents. One system may contain many virtual places, each establishing a domain of logically related services under a common security policy governing all agents at this place. Agents are equipped with allowances limiting their resource accesses, both globally per agent lifetime and locally per place. We discuss aspects of this architecture and report about ongoing work. Keywords: migration, multi-language, interpreter, Tcl, C, byte code, Java, persistence, authentication, security domain. 1. Introduction Mobile agents have raised considerable interest as a new concept for networked computing, and numerous software platforms for various forms of mobile code have recently appeared and are still appearing [CGH95, CMR+...
Mole -- Concepts of a Mobile Agent System
, 1997
"... Due to its salient properties, mobile agent technology has received a rapidly growing attention over the last few years. Many developments of mobile agent systems are under way in both academic and industrial environments. In addition, there are already various efforts to standardize mobile agent fa ..."
Abstract
-
Cited by 81 (5 self)
- Add to MetaCart
Due to its salient properties, mobile agent technology has received a rapidly growing attention over the last few years. Many developments of mobile agent systems are under way in both academic and industrial environments. In addition, there are already various efforts to standardize mobile agent facilities and architectures. Mole is the first Mobile Agent System that has been developed in the Java language. The first version has been finished in 1995, and since then Mole has been constantly improved. Mole provides a stable environment for the development and usage of mobile agents in the area of distributed applications. In this paper we describe implementation techniques for mobility, present communication concepts we implemented in Mole, discuss security concerning Mobile Agent Systems, and present system services provided by Mole.
Analyzing Mobile Code Languages
, 1997
"... The growing importance of telecommunication networks has stimulated research on a new generation of programming languages. Such languages view the network and its resources as a global environment in which computations take place. In particular, they support the notion of code mobility. To under ..."
Abstract
-
Cited by 54 (12 self)
- Add to MetaCart
The growing importance of telecommunication networks has stimulated research on a new generation of programming languages. Such languages view the network and its resources as a global environment in which computations take place. In particular, they support the notion of code mobility. To understand, discuss, evaluate, and compare such languages, it is necessary to develop a new set of programming language concepts and/or extend the concepts that are used to deal with conventional languages. The purpose of this paper is to provide such framework. This is done hand-in-hand with a survey of a number of existing new languages.
Expressing Code Mobility in Mobile UNITY
, 1997
"... . Advancements in network technology have led to the emergence of new computing paradigms that challenge established programming practices by employing weak forms of consistency and dynamic forms of binding. Code mobility, for instance, allows for invocation-time binding between a code fragment and ..."
Abstract
-
Cited by 21 (8 self)
- Add to MetaCart
. Advancements in network technology have led to the emergence of new computing paradigms that challenge established programming practices by employing weak forms of consistency and dynamic forms of binding. Code mobility, for instance, allows for invocation-time binding between a code fragment and the location where it executes. Similarly, mobile computing allows hosts (and the software they execute) to alter their physical location. Despite apparent similarities, the two paradigms are distinct in their treatment of location and movement. This paper seeks to uncover a common foundation for the two paradigms by exploring the manner in which stereotypical forms of code mobility can be expressed in a programming notation developed for mobile computing. Several solutions to a distributed simulation problem are used to illustrate the modeling strategy for programs that employ code mobility. Keywords. Code mobility, UNITY, Mobile UNITY, coordination, mobile computing, mobile code languages...
A Security Architecture for Multi-Agent Matchmaking
, 1996
"... Using a multi-agent system to match and introduce users who share share interests has important advantages, but handling sensitive data involves a number of design challenges in ensuring user privacy. This paper describes many of them, briefly summarizes some relevant cryptographic technology, and u ..."
Abstract
-
Cited by 17 (2 self)
- Add to MetaCart
Using a multi-agent system to match and introduce users who share share interests has important advantages, but handling sensitive data involves a number of design challenges in ensuring user privacy. This paper describes many of them, briefly summarizes some relevant cryptographic technology, and uses this technology to demonstrate how to avoid most of the potential privacy problems without unacceptable performance penalties. INTRODUCTION In general, agents are useful because they understand some aspects of their users' goals and can carry out actions autonomously to fulfill those goals. This may require that any given agent know personal or sensitive information about its user, and that it must be robust against revealing this information to third parties or allowing its actions to be subverted by a malicious interloper into carrying out an undesired action. As the value of the information or the motivation to inflict damage increases, the possibility of inadvertent information dis...
Implementing incremental code migration with XML
- Proc. 22 nd Int. Conf. on Software Engineering (ICSE2000
, 2000
"... ..."
Programming with Agents: New metaphors for thinking about computation
, 1996
"... Computer programming environments for learning should make it easy to create worlds of responsive and autonomous objects, such as video games or simulations of animal behavior. But building such worlds remains difficult, partly because the models and metaphors underlying traditional programming lang ..."
Abstract
-
Cited by 13 (0 self)
- Add to MetaCart
Computer programming environments for learning should make it easy to create worlds of responsive and autonomous objects, such as video games or simulations of animal behavior. But building such worlds remains difficult, partly because the models and metaphors underlying traditional programming languages are not particularly suited to the task. This dissertation investigates new metaphors, environments, and languages that make possible new ways to create programs -- and, more broadly, new ways to think about programs. In particular, it introduces the idea of programming with "agents" as a means to help people create worlds involving responsive, interacting objects. In this context, an agent is a simple mechanism intended to be understood through anthropomorphic metaphors and endowed with certain lifelike properties such as autonomy, purposefulness, and emotional state. Complex behavior is achieved by combining simple agents into more complex structures. While the agent metaphor enables...
Reasoning About Code Mobility with Mobile UNITY
, 1999
"... This paper seeks to uncover a common foundation for the two paradigms by exploring the manner in which stereotypical forms of code mobility can be expressed in a programming notation developed for mobile computing. Several solutions to a distributed simulation problem are used to illustrate the mode ..."
Abstract
-
Cited by 8 (3 self)
- Add to MetaCart
This paper seeks to uncover a common foundation for the two paradigms by exploring the manner in which stereotypical forms of code mobility can be expressed in a programming notation developed for mobile computing. Several solutions to a distributed simulation problem are used to illustrate the modeling strategy and the ability to construct assertional-style proofs for programs that employ code mobility. Categories and Subject Descriptors: C.2.1 [Distributed Systems]: Distributed Applications; D.2.4 [Software/Program Verification]: Correctness Proofs; D.2.10 [Specifying and Verifying and Reasoning about Programs]; D.2.11 [Software Architectures]: Patterns; F.1.2 [Modes of Computation]: Parallelism and Concurrency General Terms: Design, Theory, Verification, Languages Additional Key Words and Phrases: Code mobility, mobile agent, UNITY 1. INTRODUCTION Code mobility is defined informally as
Incremental Code Mobility with XML
, 1999
"... We demonstrate how XML and related technologies can be used for code mobility at any granularity, thus overcoming the restrictions of existing approaches. By not fixing a particular granularity for mobile code, we enable complete programs as well as individual lines of code to be sent across the net ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
We demonstrate how XML and related technologies can be used for code mobility at any granularity, thus overcoming the restrictions of existing approaches. By not fixing a particular granularity for mobile code, we enable complete programs as well as individual lines of code to be sent across the network. We define the concept of incremental code mobility as the ability to migrate and add, remove, or replace code fragments (i.e., increments) in a remote program. The combination of fine-grained and incremental mobility achieves a previously unavailable degree of flexibility. We examine the application of incremental and fine-grained code mobility to a variety of domains, including user interface management, application management on mobile thin clients, for example PDAs, and management of distributed documents. Keywords Incremental Code Mobility, XML Technologies 1 INTRODUCTION The increasing popularity of Java and the spread of Webbased technologies are contributing to a growing int...
Ubiquitous Computing and the Need for a New Operating System Architecture
, 2001
"... Traditional operating system architectures are not able to cope with the demands of ubiquitous computing. These demands include mobility of code and running applications, precise resource control, robustness, and user-friendly failure handling. Furthermore, traditional operating systems were designe ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
Traditional operating system architectures are not able to cope with the demands of ubiquitous computing. These demands include mobility of code and running applications, precise resource control, robustness, and user-friendly failure handling. Furthermore, traditional operating systems were designed for desktop or server use and contain functionality that is ballast for a ubiquitous system. One example for such ballast is the file system. We describe JX, our own operating system architecture, that has the desired properties, follows a microkernel approach, and structures the operating system as a set of components. 1

