• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

The ultimate performance boost...

 
Bartender
Posts: 4121
IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have heard rumors that Sun (or some other company) was developing something like a "Java chip" that basically has a processor that uses Java bytecode as it's "assembler". This would obviously make Java execution much faster, but would make upgrading your JVM harder (unless flash ROMS or something were used). Has anyone else heard anything about this (i.e. if it's true, on the way, etc.)?
-Nate
 
Sheriff
Posts: 5782
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
At the last Tech Days seminar here in Raleigh, there was a presentation about J2ME and Java for embeded devices. They spoke about "KVM" - stands for Kilo VM - a scaled down version of standard JVM that can run in a few kilobytes of memory. Sun is also devloping "device profiles" - some kind of a standardization in categorizing small devices so that KVMs can be implemented for the entire profile instead of individual device types. The idea is a KVM written for one device profile should run on ALL devices belonging to that profile, no matter what type of devices are included.
Scaling down obviously makes it faster because it supports only a limited subset of standard features. That's what I think

------------------
Ajith Kallambella M.
Sun Certified Programmer for the Java2 Platform.
 
Ranch Hand
Posts: 84
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
And of course, moving away from the concept of a 'general-purpose' computer, and implementing only the functions you need in silicon will eliminate a lot of time consumed on a computer for loading and storing data, as well as a lot of branches that can be cut out as they will no longer lead to valid options.
Memory access, disk access....all gone.
Marius
 
author
Posts: 106
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Sun was developing a chip called the MicroJava 701 based on their picoJava spec. I'm not sure if it ever shipped.
A company called aJile systems (www.aJile.com) has a chip for sale that interprets bytecode in hardware.
Peter Haggar
------------------
Senior Software Engineer, IBM
author of: Practical Java
 
Author
Posts: 6055
8
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
There are a number of companies doing embedded Java, i.e. Java on the chip. They range from full Java processors down to picoJava, aka Card Java.


They spoke about "KVM" - stands for Kilo VM - a scaled down version of standard JVM that can run in a few kilobytes of memory. Sun is also devloping "device profiles" - some kind of a standardization in categorizing small devices so that KVMs can be implemented for the entire profile nstead of individual device types. The idea is a KVM written for one device profile should run on ALL devices belonging to that profile, no matter what type of devices are included.


The kVM is really just defines a Java subset, or more accurately, the J2ME configurations and profiles define Java subsets. These ca be implemented either in software or hardware--so the use of a kVM dosn't imply embedded Java.
A kVM is jst a JVM. Just as a single JVM only runs one a single chip/OS combo, so will a kVM. I will likely need two different kVMs for my RIM and my Palm. Code written for a particular J2ME profile will, in theory, run on all devices supporting that profile--assuming you don't use OEM APIs, and the GUI works across the screens of all devices.
For more information, see the J2ME forum.

--Mark
hershey@vaultus.com
 
reply
    Bookmark Topic Watch Topic
  • New Topic