This chapter is from the book

This chapter is from the book

The vision for Jini technology started with a vision of the integration of
network services based on various research projects such as Oberon. The Oberon
system was invented by Niklaus Wirth, who was the inventor of the Pascal
computing language. A lightweight system, Oberon was written in one programming
language and uses knowledge-based objects that spans the gap between the
operating system and an application. This was key to building a unified,
integrated network of services such as that found in Jini technology.

The Oberon system relies on a single-user system that enables a
single-threaded, multitasking operating system to run in a single window. The
system enables the extension of persistent objects that build a graphical user
interface (GUI), which is a tree of many objects that export abstract data
types.

In the Oberon system, applications are modules that reuse the abstract data
types of the GUI objects and are not exposed to their implementation. The Oberon
system embodies the strength that Jini network technology developers wanted to
emulate: extensibility that isn't tied to an underlying implementation.
(More information about the Oberon system, which spurred the initial concepts of
Jini technology, can be found at www.oberon.ethz.ch/white.html.)

3.1 Wire Protocols: Constricting and Fragile

The concept of abstracting the underlying implementation is important because
of how constricting and fragile an underlying protocol can be. A wire protocol,
such as that found in the communications layer of a computer network, has many
restrictions, including the following:

All participants must implement all protocol versions for full
compatibility. For example, when features are added to sendmail and a new
sending protocol is established, it is difficult to upgrade all servers at
once.

Improved functionality implies increased complexity. For example, when a
new compression scheme is added to the File Transfer Protocol (FTP), existing
clients cannot understand the new scheme.

These types of restrictions only make it harder to evolve a network. The Jini
network technology hides the protocol to provide more flexibility.