Legion: A Worldwide Virtual Computer
Home
General
Documentation
Software
Testbeds
Et Cetera
Map/Search

  Glossary

Click on the black ball next to the word or phrase you wish to see.
Admin
Authentication Object
BasicFileObject
Batch Queue Host Object
Binding Agent
Binding Cache
Binding Layer
Bootstrap Host
Bootstrap Vault
Class Object
Class-mandatory Member Function
Collection
Context
Context Object
Context Space
Core Object
Domain
Enactor
Host
Host Object
Host-Vault Pair
Implementation Object
Implementation Cache
LegionAttribute
LegionComputationTag
LegionExoEvent
LegionImplicitParameter
LOID
MayI Layer
Message Layer
Object Address
Object Persistent Address
Object Persistent Representation
Object-mandatory Member Functions
Process Control Daemon Host Object
Root Context
Scheduler
Start-up Host
tty Object
Vault
Vault Object

Admin
The Legion system administrator's user id. The admin user id is automatically created when Legion security is enabled on a new Legion system. Anyone logging in as admin has root privileges.
Authentication Object
A Legion object that represents a Legin user in a Legion system. The Authentication Object contains the user's password and is represented in context space by a user id.
BasicFileObject
A BasicFileObject is a core Legion system object that manages one data file in context space. It provides a file-like interface to other Legion objects.
Batch Queue Host Object
A type of host object that submits jobs to the local queueing system. The batch queue host object is intended to take advantage of hosts that use a local queue management system.
Binding Agent
A binding agent is a core Legion object that maps each object's LOID to its object address (OA) (a <LOID,OA> pairing is called a binding). The binding agent caches bindings and cooperates with other binding agents.
Binding Cache
A binding cache contains bindings collected during repeated executions of the binding mechanism. Once an object calls a method on another object, it is likely to want to call other methods on that same object and will want to locate the object quickly and easily. The object can call on its local binding cache to get the desired object's binding.
Binding Layer
The binding layer is a special code module in the Legion library. It is responsible for matching LOIDs with Object Addresses (OAs). When one Legion object attempts to communicate with another Legion object the library checks its cache for a valid LOID-OA binding for the desired object. If it succeeds, the two objects can communicate normally. If it fails, the binding layer queries Legion core objects for a valid OA for the desired object's LOID.
Bootstrap Host
A physical machine used to boot a Legion system. The bootstrap host object (which represents and manages the bootstrap host) is the first host object added to a new Legion system. This can be the same machine as the Start-up Host.
Bootstrap Vault
A storage space on a Legion system's bootstrap host. The bootstrap vault is managed by the bootstrap vault object.
Class Object
The class object is a core object that actively performs the usual role of a class in an object oriented system. It has system-level responsibilities, such as creating and deactivating instances. Every Legion object is defined and managed by its class object.
Class-mandatory Member Functions
All Legion class objects export a set of class-mandatory member functions, such as createInstance() and deleteInstance().
Collection
The Collection is a special Legion object used for resource management. It collects and maintains information about its assigned resources.
Context
A context contains a set of context names in context space. Users can create, name, move, and destroy contexts from the GUI or with command-line utilitites such as legion_ls in order to manage their context space.
Context Object
A context object is a core object that manages a piece of context space.
Context Space
Context space is a virtual, hierachical name space shared by all objects in a Legion system. It resembles Unix space in that a user assigns string names to objects and organizes those names into set of hierarchies. These string names are represented in Legion space by context objects.
Core Object
A core object is a special Legion object that cooperates with other core objects to create, locate, manage, and remove objects in a Legion system. There are several different core objects, including LegionClass, LegionVault, and LegionHost.
Domain
A domain is a discrete Legion system, which can run autonomously. Multiple domains can be linked together to form a multi-domain larger virtual machine. Objects created in one of these domains can communicate with and use the services of objects in another domain.
Enactor
The Enactor is a special Legion object used in resource management. It negotiates with resources to reserve blocks of time and space.
Host
A host is a physical machine that contains at least one processor and can contain active Legion objects. A host has at least one host object on it.
Host Object
A host object is a core object that is responsible for managing a particular set of CPU resources on a computer. Its duties include downloading implementations of Legion objects, starting objects, and managing processes.
Host-Vault Pair
All Legion host objects must be paired with at least one compatible vault object in order to carry about Legion processes. A compatible host and vault is called a host-vault pair.
Implementation Object
An implementation object is a core object that allows other Legion objects to run as processes. It acts as an executable file that a host object can execute when it receives a request to activate or create an object.
Implementation Cache
An implementation cache stores copies of previously used implementation objects.
LegionAttribute
LegionAttributes are special name-value pairs stored by all Legion objects in an attribute database. These attributes allows an object to maintain a list of values that in some way describe the object.
LegionComputationTag
All Legion method invocations are assigned unique values, called Legion ComputationTags that allow return values to be matched with their corresponding method sends.
LegionExoEvent
LegionExoEvents resemble events in sequential or multi-threaded applications, except that instead of communicating information within the current address space LegionExoEvents are actually Legion method invocations that are sent out to interested Legion objects under certain circumstances.
LegionImplicitParameter
LegionImplicitParameters are special name-type-value 3-tuples maintained by the Legion library. They are automatically transmitted with every method invocation. This allows information to be passed from one object to another without the user's intervention.
LOID
A LOID is a unique system-level name assigned to every Legion object. It is valid and unchanging throughout an object's lifetime, even if the object migrates or changes state.
MayI Layer
MayI is part of the Legion security model, which uses the message and MayI layers to protect communication with Legion objects. The MayI layer is responsibile for controlling access to objects. MayI is turned off in systems that have not enabled Legion security.
Message Layer
The message layer is part of the Legion security model, which uses the message and MayI layers to protect communication with Legion objects. The message layer intercepts every message sent or received by Legion objects and determines what kind of security measure are required to protect the message and the objects.
Object Address
An object address (OA) is a position-dependent name assigned to each Legion object. It tells other Legion objects where the object can be found and what addresses and values to use when communicating with it. When an object migrates or changes state its OA changes to match its new location.
Object Persistent Address
When a Legion object is inert its OPR is stored in an associated vault. The OPR's location is described in an Object Persistent Address (OPA). The OPA is comparable to an active object's Object Address (OA). Objects use their OPA to gain access to their Object Persistent Representation (OPR).
Object Persistent Representation
A Legion object can alternate between two states, active and inert. An inert object's state is stored in an associated vault. Its inert state is called its Object Persistent Representation (OPR).
Object-mandatory Member Functions
All Legion objects (including class objects) export a common set of object-mandatory member functions, such as save_state(), restore_state(), and ping(). There is also a set of class-mandatory member functions exported by class objects.
Process Control Daemon Host Object
A type of host object that uses the services of a daemon to regulate ownership of all processes controlled by that host object. The PCD host object must be started by someone with root privileges on that host.
Root Context
The root context is a Legion context object which provides users with a base for absolute context path names. The default name is "/".
Scheduler
The Scheduler is a special Legion object used in resource management. It receives information from the Collection object and produces lists of possible resources for specific tasks.
Start-up Host
The start-up host is a physical machine used to run the legion_startup command. This can be the same machine as the Bootstrap Host.
tty Object
A Legion object that directs output from Legion processes towards a specific shell.
Vault
A vault is a storage space that holds inactive Legion objects. A vault has at least one vault object, which manages the vault.
Vault Object
A vault object is a core object responsible for managing the persistent state of objects running on any associated host object. It manages those objects' Object Persistent Representations (OPRs) as well.



 

[Home] [General] [Documentation] [Software]
[Testbeds] [Et Cetera] [Map/Search]

This work partially supported by DOE grant DE-FG02-96ER25290, Logicon (for the DoD HPCMOD/PET program) DAHC 94-96-C-0008, DOE D459000-16-3C, DARPA (GA) SC H607305A, NSF-NGS EIA-9974968, NSF-NPACI ASC-96-10920, and a grant from NASA-IPG.

legion@Virginia.edu
http://legion.virginia.edu/