The Mjølner System: Distributed Objects
The distribution librarys supports distributed BETA objects on network of
computers.
Remote object references
An object in BETA program may refer objects in a BETA program on another
machine.
Transparent object access
The programmer can call operations is a distributed object as in a local object.
A distributed object is represented by a proxy object which handles the
communication with the remote object. Handling of proxy objects and remote
communication is transparent to the programmer.
Concurrency and synchronization
The distribution library extends the BETA constructs for
concurrency and synchronization. BETA has built-in facilities for
concurrent execution and synchronization and a distributed BETA application
is an example of a concurrent BETA program. I.e. synchronization
between distributed BETA objets makes use of the same mechanisms
as a single- or multiprocessor concurrent BETA program.
Failure handling
A main distinction between a distributed application and a
single- or multiprocessor concurrent program is that a distributed
application is more subject to external failures.
The distribution library contains extensive facilities for failure handling
by providing means exceptions caused by external failures.
Client-server applications
The distribution library is well suited for implementing client-server applications.
An object can, however, at the same time be both a client and
a server. There is thus no need to separate objects into
clients and servers.
Network abstractions
A distributed applications exists in an environment of workstations
and PC's. The distribution library contains abstractions for representing
the environment.
- There are class patterns for representing host machines, and processes
within host machines.
- The NameSpace abstraction supports a naming mechanism for naming host machines
in a network. The NameSpace abstraction is an extensible class pattern
that can be used to implement other naming mechanisms
Platform independence
The distribution mechanism is platform independent and a distributed
BETA application may run on a heterogeneous set of of UNIX workstations,
Win32-based PC's and Macintoshes.
More Information
For further information, see
Mjølner System: Distributed Objects in BETA - Reference Manual.