|
Java Card Operating System
The company is building a Java-based operating system "Awanee" as a smart card runtime environment that employs the Java CardTM technology to enable multiple inter-industry applications. By developing a next generation smart card operating system employing Java CardTM technology, WebKomputing will be able to offer smart card application software developers an ubiquitous platform, which makes development once for all and portable across all smart cards. This capability will allow card issuers to develop and deploy multiple applications and services via a single card, ranging from banking, identification, access control, to loyalty, petty cash, insurance, ticketing, membership, etc.
Awanee is built upon a hierarchical Java CardTM architecture. The operating system is broken down into five layers: API Core, Java Card Runtime Environment, Java Card Byte Code Interpreter, Micro Kernel Native Functions, and Processor Abstraction Layer (PAL). The application software, referred to as applets, is executed on the operating system through the API Core and its derivatives. The API core specifies the basic interface variables and access functions for smart card operations; its derivatives are extensions to specific application domains such as VOP for banking and GSM for cell phone subscriber authentication. Java Card runtime environment embodies the basic operating system functions such as event handling, job dispatching, resource management, applet downloading and indexing, etc. All the run-time environment and application functions are coded in Java language and compiled into byte codes. Java Card Byte Code interpreter then decodes and executes the byte codes by invoking the micro kernel functions. The micro kernel contains the basic routines for memory allocation, task scheduling, file access, and device interface where the PAL implements the processor specific memory and instruction mappings.
This architecture permits only interactions between neighboring layers and prohibits the interactions across the layers that are separated by other layers. A change at one layer affects only the immediate neighboring layers and there will be no impact on the layers beyond. If the smart card processor is replaced, the smart card applications software needs no change while only the PAL needs some alterations. This ensures the application software portable from card to card without any change or recompiling. On the other hand, the PAL is kept very thin to only those necessities so as to minimize the hardware tailoring effort. Thus the porting of the WebKomputing Java Card operating system to different smart card chips will be speedy and simpler than most competitors.
|