Architecture
PIKS is designed as a mass-market type application where the server can handle thousands of simultaneous users with a short response time, while keeping the user device resource requirements (CPU, memory, power, cost) to an absolute minimum.
PIKS is based on MAP (Mobile Application Partitioning) technology, which provides an optimal way of splitting an application between a smart server based application and a semi-intelligent PDA. The MAP kernel can run any application without modifying or adding additional code to the palmtop device. All the application intelligence sits on the server, which allows a much larger level of flexibility for application complexity as well as much easier maintenance of the wide variety of future pervasive devices. The server code is written in Java so that PIKS isn't limited to a specific server platform.
MAP provides a generic kernel on the device which manages widgets sent from the server. Widget events, typically user taps, are sent back up to the server for processing. Downstream messages, which describe a full screen of widgets and information, are around 200 bytes long, while upstream messages describe widget events that are around 10 bytes. Short messages combined with the ability to shut down the RF transceiver when not waiting for a server response can provide long battery life using a small standard battery.
The mobile device runs a small program that handles the rendering and control of the user interface. The mobile device layer is independent of the operating system GUI and requires minimal device resource. The architecture is built around an extensible formal XML syntax, designed for personal kiosk applications. The major components are an XML based kiosk definition file and a specific DTD ( Document Type Definition) which defines content, layout, and flow. It includes run-time resolution of ("harpooned") dynamic data and support for time-based data refresh.