The Java-enabled wireless world
Java will dominate the market for small, smart devices
By John Rommel, JavaWorld.com, 03/01/00
- Digg
- Reddit
- SlashDot
- Stumble
- del.icio.us
- Technorati
- dzone
I predict that by next year Java will be the major wireless development platform. Your Walkman, personal digital assistant
(PDA), Internet, wallet, and favorite video game will reside in a box smaller than a portable phone. Today's portable phone,
with computing power equivalent to an Intel 386 microprocessor's, will continue to obey Moore's Law, doubling in power every
18 months. Java already provides the capabilities needed to write meaningful software applications on those devices. Those
applications include games, investment portfolios, calendars, and other types of software realized from the imaginations of
creative developers. Our future world will be connected to wireless devices running Java applets.
Any application that can run on a PC can potentially run on a portable phone. Java applets are the perfect way to run content-rich
applications, since they offer a way of delivering more information and more control of the data sent to your handheld device.
These applets are easy to create, install, upgrade, modify, and run across different platforms. Many wireless devices will
run Java simply because Java already has the appropriate features, and no viable alternative is in sight. NTT Docomo (a technology
spin-off of Nippon Telephone and Telegraph) and Motorola are looking at Java portable phones as the next service delivery
platform. Internet software vendors now have the opportunity to write dynamic, content-rich applications on consumer appliances
such as portable phones or PDAs. In the coming years, many applications now written for the PC will be written for consumer
appliances. Java applets will control your air conditioner, turn on your house lights, and start your microwave. Although
there are now screen-size and bandwidth limitations (with bandwidth currently low at 19.2 KB), technological advances will
provide both greater screen size and bandwidth.
Sun's KVM
The K Virtual Machine (KVM) is the center of Java 2 Platform, Micro Edition (J2ME), an integral piece of Java 2 that was developed
for wireless and other consumer electronic devices. Designed and written from scratch by Sun engineers, the KVM's mere 50
KB makes it much smaller than the Palm and Windows CE platforms and more attractive to developers writing for wireless appliances.
The KVM is a platform for smaller handheld devices -- such as portable phones, pagers, PDAs, set-top boxes, and small-payment
terminals -- whose battery life and memory are limited.
In designing the KVM, speed and a small footprint were project imperatives. In creating a smaller footprint for the core API
and making it more scalable, Sun engineers optimized the J2ME core API by removing class dependencies when possible and decreasing
class library sizes. Other considerations were:
- Portability without the typical Java multiplatform design
- Writing the code in C to take advantage of low-level efficiency
- Handle-free garbage collection
- Use of wrappers and native functions to call host system functions rather than Java native interfaces
- No support for AWT or Swing
- Optimization that addresses performance and space requirements
- Support for Jini applications
To create an application that will run on the KVM, you would develop on a workstation using the available Java tools and compiled
code to produce a Java file, and then process the code through a converter.
The KVM technology is available through Sun's Community Source License.
- Digg
- Reddit
- SlashDot
- Stumble
- del.icio.us
- Technorati
- dzone