MOCA: A service framework for mobile computing devices
Abstract
MOCA is an adaptable service framework targeting mobile computing devices with limited memory footprint. TO ensure portability across a large spectrum of these devices, it is written in Java.%4OCA is based on the notion of serrices, and assumes that applications can be decomposed into sets of cooperating services. A service is a loadable software component that performs a specific function such as data encryption or caching. The MOCA framework is composed of a service registry and a set of essential services. The registry provides life-cycle management of services including dynamic registration and look-up. Essential services, stored on the device, provide the minimum functionality required to establish a generic secure computing environment on top of a Java Virtual Machine (JVM). In particular, MOCA securely supports multiple applications as well as optional services running on a single JVM. Optional services and applications can reside locally on the device or be dynamically downloaded from remote locations. MOCA also allows a device to adapt to its environment by enabling dynamic discovery and registration of remote services published by surrounding devices. A single mechanism is used to support both local and remote services, which allows a device to access remote services on other devices as if these services were local to the device itself. Unique features of MOCA include a distributed service discovery model, use of a single registry for both local and remote services, and a lazy service loading policy that minimizes memory consumption. keywords: component software, service framework, service discovery, mobile device, Java.