Embedded Operating Systems
Embedded technology is becoming increasingly important with the proliferation of mobile devices. Embedded systems make it possible for mobile devices to run applications and receive Internet based content.
CSOFT is one of the first companies in China to successfully port a Java KVM to next generation data driven handsets. As one of the earliest adapters of J2ME standard, CSOFT is a leading provider and a proven market leader for JAVA KVM and complete Java technology solutions for handset manufactures. CSOFT is also the only KVM technology provider selected by the world largest wireless carrier, China Mobile, to jointly develop Java mobile phone standards for next generation Java enabled handsets in China. Combining technological R&D from both the US and China, CSOFT has developed VMxp, a robust J2ME platform for mobile devices. VMxp is fully compliant with SUN Microsystems' CLDC (Connected Limited Device Configuration) and MIDP (Mobile Information Device Profile) standards, with additional optimization to boost performance and capabilities. CSOFT 's VMxp has been implemented in next generation mobile phones by major handset manufacturers in China. In addition to Java KVM, CSOFT also has excellent resources with embedded Linux. We are capable of porting the Linux platform to third party PDAs.
Next Generation Mobile Data Network
Internet-connected mobile devices are becoming indispensable in our daily lives. The ability to access information in real-time and at any place has enabled us to operate more efficiently. Wireless carriers have recognized the tremendous potential in being able to offer their subscribers anytime wireless access to new applications and services. For this reason, wireless carriers such as China Mobile have invested heavily to build technological infrastructure to effectively deliver data and applications to handsets. Older technologies, such as WAP, have had only limited success due to poor application features and network speed. It was only until recently that Java has become the platform of choice for carriers because of its flexibility, scalability, security, and compatibility. Java provides a robust application platform that supports the creation of feature rich, visually compelling applications for next generation networks based on 2.5G and 3G.
Compared to other platforms, Java has built-in support for cross-platform implementations and is among the most compelling platforms for creating feature-rich software for handset devices. Java offers inherent security advantages because Java applications communicate through the VM and are not given access to core OS functions. In addition, since Java applications are stored in a bytecode class file format, they are more easily updated over the air.
In order to deliver the wide range of latest J2ME applications to different handsets, carriers need both a backend application provisioning server platform and the front-end Java enabled mobile phones. CSOFT has experience in the development of both the backend solution and handsets' K-Java virtual machines. CSOFT 's Java Application Provisioning Platform (JACP) provides an end-to-end solution for carriers to manage a Java application's entire lifecycle including submission, review, invoke, upgrade, and deletion. It also has built-in support for a number of different billing options for downloadable applications such as time-based, data-based, or user-based. CSOFT 's VMxp provides a robust application platform for handsets, enabling mobile subscribers to dynamically download and run a wide array of J2ME applications.
VMxp(TM)
VMxp(TM) Java Virtual Machine is one of CSOFT 's core products. It is designed to power next generation handheld devices such as cell phones and PDAs by providing a Java runtime environment for a wide array of J2ME applications, VMxp(TM) is CSOFT 's implementation of Sun Microsystems' KVM technology and is fully compliant with CLDC (Connected Limited Device Configuration) and MIDP (Mobile Information Device Profile) standards. VMxp(TM) can be interfaced quickly with native systems such as REX and Nucleus on a variety of hardware devices.
VMxp(TM) is developed by taking advantage of existing hardware capabilities and fully optimizing the core Java functionalities, resulting in a highly optimized and extremely compact application kernel. VMxp(TM) forms a basic low-level OS for J2ME applications designed for 2.5G and 3G wireless networks, delivering flexibility, scalability, security, and compatibility among next generation Java-enabled devices.
VMxp(TM) consists of the CLDC and MIDP layers. The CLDC provides the J2ME kernel and file management and the MIDP layer supports graphics, networking, limited database support, and contains selected classes from the java.io, java.lang, and java.util packages. VMxp(TM) virtual machine has many benefits over older Java technology such as PersonalJava. One key advantage is size. A PersonalJava implementation can take several megabytes of combined static storage and RAM. In contrast, a VMxp(TM) implementation can often run comfortably in 512k or less of combined storage and RAM. Another advantage is that the GUI components have been designed with smaller screens and more limited keyboard/keypad input in mind.
VMxp(TM) Technical Features:
- Advanced Technology:
Based on Sun KVM standards and taking advantage of CSOFT 's expert Java engineering capabilities, VMxp(TM) has been developed to create a lean and powerful Java runtime environment. The VMxp(TM) has undergone exhaustive testing on the Palm platform and mobile phone systems to ensure consistent performance.
- Resource and Runtime Efficient:
VMxp(TM) uses an extremely small footprint in its kernel design and class files, requiring minimal memory to fully function. VMxp(TM) core functionalities can be further extended by allowing internal class libraries to be dynamically updated and modified to add new features at runtime.
- Security:
One of VMxp(TM) strengths is its robust byte-code level security. Unlike standard C applications, J2ME applications running in VMxp(TM) have to go through a byte-code pre-verifier to examine its code integrity. At this stage, there is no local device JNI (Java Native Interface) support. KVM developers are unable to do extensive security verification using other Java versions. Once an application is running, it cannot access system resources outside of a 'sandbox,' preventing applications from acting as viruses.
- Portability:
Minimal native system reliance makes VMxp(TM) highly portable. Tasks such as garbage collection are carried out using methods unrelated to the native system allowing VMxp(TM) to be easily ported to different hardware devices.
- Flexibility:
VMxp(TM) allows its internal function sets to be rearranged and modified at runtime. It can accept both application code and class libraries that form the Java2 environment. A dynamically adjustable runtime environment creates a highly flexible platform for development and deployment of various consumer applications.
- High Development Efficiency:
Based on Sun's J2ME three-layered open architecture, each layer can be developed independently, thus reducing development time and improving efficiency.
- Expandability:
VMxp(TM) creates a unique OS environment to allow applications to be renewed and upgraded dynamically, eliminating the need to constantly upgrade hardware.
- Compatibility:
VMxp(TM) provides compatibility among existing hardware devices and services, helping hardware manufactures maximize their investment gains while reducing development costs.
One important advantage of VMxp(TM) is its compact size - both the static storage (ROM, flash) and RAM requirements. The VMxp(TM) class libraries are less then 100k and the VM (depending on the compiler and the targeted CPU) is approximately 150k. VMxp(TM) requires approximately 250k of RAM to run simple J2ME applications. VMxp(TM) also has the ability to create and use ROMized class files. These are class files that have been pre-linked and can be executed directly out of ROM. This directly corresponds to a savings in RAM.
VMxp(TM) Targeted Wireless Devices-Mobile Phones
Compared to conventional cell phones, Java-enabled devices have unmatched advantages by allowing mobile users unprecedented choices of applications and services, including live wireless Internet, feature-rich consumer applications, personalized services, and cross-device digital assistants.
- Mobile Internet:
Java applications have significantly improved the performance of the mobile Internet, making the wireless connection both stable and open. Java applications are ideal for mobile offices, browsing the Internet with micro-browsers, sending and receiving emails, receiving the latest news, watching sports, playing games among friends, and even watching movies. The Japanese mobile service giant NTT DoCoMo, for example, now provides over thirty types of such services, including weather forecast, map information, real-time stock information, and online games.
- Rich Graphics:
Mobile devices can benefit from rich GUI API's that allow for differentiation of services and the development of compelling applications. Given a faster network, such as 3G, Java applications can offer interactive multimedia and compelling graphic images in real-time, resulting in greater consumer satisfaction.
- Wide Array of Consumer Applications:
Given the powerful features that Java cell phones deliver, application developers in Japan, Korea, and the U.S. are actively engaged in the development of Java applications for next-generation Java-enabled handsets. With the growing popularity of Java cell phones, more and more software developers and content providers will produce feature-rich applications to meet market demand.
- Personalized Services:
With Java technologies, mobile phone users can easily download applications and services to suit their own interests and needs. Furthermore, they no longer have to acquire new mobile phones if they want to take advantage of services offered by updated releases of applications.
- Network Independence:
Java applications are network independent, allowing Java-enabled cell phones to be used on a variety of networks such as GSM, CDMA, GPRS, and the 3G network.

For more information about CSOFT's wireless application solutions, please click here.
|