Jini (pronounced DJEE-nee like the Arabic word for "magician") is a network architecture concept that Sun Microsystems calls "spontaneous networking." Using Jini, users will be able to plug printers, storage devices, speakers, and any kind of device directly into a network and every other computer, device, and user on the network will know that the new device has been added and is available. Each pluggable device will define itself immediately to a network device registry. When someone wants to use or access the resource, their computer will be able to download the necessary programming from it to communicate with it. No longer will the special device support software known as a device driver need to be present in an operating system. The operating system will know about all accessible devices through the network registry.
Jini can be viewed as the next step after the Java programming language toward making a network look like one large computer. Jini promises to enable manufacturers to make devices that can attach to a network independently of an operating system like Windows 95. Equipped with its own small, special-purpose and possibly microchip-embedded operating system, a printer could be plugged into a network and immediately shared by users at a mix of computers: Windows, Macintosh, UNIX. Mobile devices could be transported and easily plugged into a network so that others could use the device.
How It Works
Jini consists of four program layers:
- Directory Service
- Remote Method Invocation (RMI)
- Boot, Join, and Discover Protocol
Any device with an operating system that supports a Java can be plugged into the network. (For many devices, the operating system can be much smaller than Windows 2000, for example, since it is serving only the functions that device requires.) When a device is plugged into the Jini network, it is immediately registered by the Directory Service layer as a member of the network. Its necessary program objects are placed in a JavaSpace layer so that other network members can discover and download them when that network member wants to use the device. The actual communication with objects in JavaSpace is done using the Remote Method Invocation (RMI) interface and layer. The layer supporting the boot, join, and discover protocols enables devices, users, and applications to announce and register themselves and to discover others.