A Distributed Virtual Machine Architecture for Mobile Platforms
Best if viewed in 800 x 600 pixels
What's NewDownload now available!
The Ghost Machine platform is designed to support a wide variety of clients and servers. The first clients being targeted are Palm Computing's Palm OS platform. In the future, support could be added to mobile devices based off of Microsoft's Windows CE platform and the now defunct Newton platform. The servers are meant to have modern computing resources, though do not have to be large workstations. They could be, for example, running on the future class of home server devices appearing on the market.
Implementing a Java virtual machine for these devices provides a better way of developing and distributing software. An application developer can now use standard Java tools and program to standard Java APIs. The only issues they need to concern themselves with are the resource constraints and input/output desktop differences. It also provides a safe way of distributing third party software. Code verification and a built in security manager can eliminate the possibility of catching a virus.
Palm OS Binaries - Contains the necessary prc and pdb files necessary to run the Ghost client. It also contains a few demo applications. These binaries need only be Hot Synched onto the Palm OS device. Click on the Ghost Icon, the demo applications will have high start times due to laying out the dynamic AWT in a static Palm OS UI. Notice that this component does not contain the server and therefore you cannot install applications. Ghost Server and Source - These classes and configuration files contain the necessary files to install new Java applications onto your PalmPilot. Please note that support for most APIs is limited in this release. The only thing that has been polished is the AWT, and nothing is by any means complete. Only JDK 1.0.2 based applications can be installed on the client though the server does require JDK 1.1 (as per the requirements below). Extract it to its own directory (e.g. ghostmach). The liscense has not been finalized yet, so please do not redistribute it or use it for commercial purposes.
old documentation until I can get new documentation up. I know I need a lot more stuff here, but I simple don't have the time. All archives were zipped using WinZip. If you wish to install your own applications now, please look at the javasrc
- Palm OS Device - The Ghost Machine client virtual machine has only be tested on the PalmPilot Professional. Other devices should work (Palm III, Personal, and maybe 5000), but this has not been tested yet. The IBM Workpad should work also.
- Memory - About 256 kilobytes of memory should be available to play with this release. About 180 kilobytes is devoted to storing the virtual machine and the runtime, while the rest is devoted to runtime memory.
- Server - The server device should be a desktop or laptop workstation with at least 16 megabytes of RAM. It should be running the latest JDK or JRE (1.1.5). The latest Microsoft JVM should be ok (I have tested this a little bit). The only server platform tested is Windows NT and 95. Other platforms should work, however, since the server is written in pure Java using standard APIs and no graphical user interface.
- Compilation - The Palm OS binary is built using the Palm OS Win32 GNU SDK. It uses make, gcc, prc-tools, PILRC, great tools but they do not install very well. Check the Palm GNU FAQ for more information. In order to install software or develop code, a copy of the JDK 1.0.2 is needed on server. This should not be the same JDK being used to "run" the server, JDK 1.0.2 is only needed for its class files. By the way, when setting the JDK102 path, only use forward slashes (NT will still recognize them).
- Documentation overhauled to be less confusing sight and a release! Old documentation still available.
Copyright © 1998 by Sean McDirmid (email@example.com)
*Palm Pilot and all other relevant trademarks belong to 3com, Palm Computing and USRobotics.
*Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc.
*WIndows CE trademarks belong to Microsoft.