Featured Whitepapers
Newsletter sign-up
View all newsletters

Sign up for our technology specific newsletters.

Enterprise Java
Email Address:

The Java-enabled wireless world

Java will dominate the market for small, smart devices

  • 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
Comment
Login
Forgot your account info?
Add comment
Anonymous comments subject to approval. Register here for member benefits.
Have a JavaWorld account? Log in here. Register now for a free account.
Resources