Features of Java Operating System
When 1st java card particulars had been issued, the cardboard chips the place eight bits with a number of hundred of bytes of RAM and some kilo bytes of EEPROM. These sever constraints led the java card discussion board and Solar to difficulty a had a number of limitations in comparison with normal java.
This specification doesn't specify and working system however an execution surroundings that the majority participant within the good card business is ready to implement on high of his personal proprietary working system. The silicon market evolution appears to point that subsequent technology merchandise will likely be based mostly on far more highly effective machines (32bits, 64bits, RISC, cache have gotten frequent in chip class) the good card business, by the java card discussion board, has clearly indentified this evolution and has began initiatives just like the java card three.Zero particulars course of that intention to outline upcoming model of java card tailored nest period of with this evolution, java has additionally developed so much. It's extra restricted to the desktop surroundings and is now current in each the server market with J2EE and within the embedded system market with J2ME.
This evolution introduced attention-grabbing characteristic to the java platform course of for working lengthy lived software are in style on the server aspect and fewer java subset relevant to classes of gadgets has been outlined with J2ME configuration.
The aim of this task is to have overview of what will be thought of now because the much less java characteristic that may be built-in to fashionable good card and the way these options that may be built-in to fashionable good card and the way these options will be changed into a card working system that address the good card business explicit constraint like huge manufacturing, personalization submit issuance. The explanation for concentrating on an working system as an alternative of an extra software program layer prefer it’s executed within the laptop world with normal JDK is to make use of java because the distinctive abstraction for functions with out intermediate ranges to cut back the workload and improve the effectivity.
Options of Java Working System:
The java platform outlined in numerous methods the java VM (Digital Machine) specification and the java language specification. Within the context of working system these methods are solely related on the working surroundings stage. The choice of the java Working System options is guided by the classical wants of OS. The coding, linking, working engine and reminiscence administration for the efficiency.
Class file of Java:
The category file is Java outline within the JVM (Java Digital Machine) specification as supply format for the code of classed to load right into a Java VM. This format is taken into account to be verbose and never compact, however it has another properties that present a most flexibility each for the event and for the code software replace. Different codecs such because the Java card 2.x Cap file or the JEFF file format are specializing in lowering file measurement utilizing the command and methods like linking data removing or file construction reorganization. These methods have good end in measurement discount however induce deployment constraints relying on the diploma of measurement discount for instance a Cap file will be ten % measurement of the equal set of sophistication information, however it requires an off card conversion step for the developer and to keep up off card a database of linking data to carry out card pre linking which is painful work for deployment and card administration.
We argue that on card class file processing that gives the identical discount ration because the JEFF conversion fifty % discount. The method explaining extra element in determine beneath.
For the reason that load hyperlink operation happens solely as soon as within the life instances on the category, we expect that the event advantages introduced by loading normal class information are well worth the effort of loading the category file in its entirety and making use of an on board conversion course of that allow to retailer in card reminiscence a construction equal to fifty % of the unique class file measurement.
One of many primary industrial earnings of selecting the category file and defining you personal conversion course of is that it provides freedom for differentiation a lot of the card manufacture can select an inside format tailored to his personal explicit constraints.
Engine Multithreaded Execution:
the java platform has native help for multithreaded and synchronization and even within the lowest configuration outlined for the embedded system market like CLDC, this assist to maintained the one might imagine that for embedded and useful resource constrained gadgets the
Help for the multithreading could also be too heavy to be cheap, effectively there are many motive to have multithreading help within the core of very small java working system. The core motive is that it permits to write down energy software framework on high of the Working System, in java with no need advanced native modifications of the Working System and it’s occur when the SIM Toolkit software mannequin has been defined in java card. There are additionally a number of classical causes to make use of threads which might be briefly described within the literature.
In restricted gadgets like good playing cards, reminiscence such because the Digital Machine implements have to be rigorously select an environment friendly and useful resource serving to implementation of the multithreading help. The existence of java software solely on the highest of java working system collaborating with native code and never with native software like in a desktop laptop appears to help a inexperienced thread like implementation relatively than a local thread implementation.
Java Reminiscence Administration:
One of many attention-grabbing characteristic of Java Digital Machine (JVM) is the robotically rubbish collected heap that's used to allocate java objects when they're created, letting the burden of transferring, compacting, releasing the reminiscence to the system as an alternative of the developer.
This attention-grabbing characteristic was missing within the java card specification and provides the developer of advanced functions to developer their very own reminiscence administration routines throughout the software code, which is written in java, this drawback of java card to behave as an Working System. The applications shouldn’t deal with such delicate process. There are a number of varieties of rubbish collectors however the ones that appear the extra acceptable to good card like environments are generational collector. This kind of collector are effectively tailored to server like lengthy lived software which is often the case of good card program.
Really the reminiscence handle for the thing situations is separate from the reminiscence administration of system information like description, threads, code, courses, objects. This usually main towards the complexity, larger footprint of the reminiscence administration and static segmentation of the reminiscence. We're experimenting a substitute for such a cut up group that's to make use of unified object oriented reminiscence administration and static segmentation of the reminiscence. We're experimenting a substitute for such a cut up group that's to make use of a unified object oriented reminiscence supervisor that each varieties of applications and system objects, on this case a lot of the issues within the system is an object together with java objects situations, loaded, code, courses and each object within the system is topic to rubbish assortment.
This reminiscence administration results in simple administration code which is then hopefully smaller and extra strong.
Totally different Utility Fashions:
A lot of the earlier characteristic of the Java Digital Machine (JVM) describe above have frequent goal put within the Working System the performance that can make smaller and extra environment friendly software. One nice power of java that was misplaced in java card and that we expect have to be reconsidered for subsequent technology good card Working System is to be software mannequin unbiased. The Java Digital Machine (JVM) doesn’t make clear a selected software mannequin, however provides all of the core options which might be needed to construct numerous profitable frameworks corresponding to applets, serves or RMI Objects.
The good card program and system designers and builders have concerns which might be similar to the folks working within the mass manufacturing embedded system gadgets market. debugging quick/safely the Working System and the applications, how one can construct shortly a product configuration, and how one can decline and Working System in product vary to leverage the funding. There may be extra, the good card business has his personal particularities like as an example the necessity for personalization of each issued card with the holder data.
The usage of java is in itself the start of an answer for a few of these issues, due to the wide selection of merchandise freely or commercially obtainable to assist designers and builders. However the excessive security exigency on good card merchandise implies that most effort have to be made on any instruments that may permit the builders to function in an surroundings as shut as doable to the precise gadget. Debugging the code whereas it runs.
Product difficulty and different instruments are assist in the manufacturing and personalize part of the playing cards. The ROM intervenes on the manufacturing step, to generate the code to masks into the chip’s ROM. It's complemented by the reminiscence serialize which is used to construct reminiscence pictures saves in information. It will likely be despatched to the cardboard at initialization and personalize time to construct the suitable reminiscence construction that can put the cardboard in the suitable state. Such instruments are often troublesome to write down and to keep up, however these duties will be tremendously simplified utilizing the introspection capabilities offered by the unified object oriented reminiscence administration introduce above.
Built-in Working System:
An answer to reduce the price of these instruments is to construct an working system that features them from the start, in a configurable method, and that may be declined from the identical set of sources in numerous editions tailored to the focused gadget. Such a configurable Working System is illustrated within the following determine.
Developer version of the Working System would come with any developer options like an embedded debugging interface based mostly on the JPDA normal, a shell based mostly console to manage the Working System load take away courses, create threads. Such an entire version would in fact run on laptop and on emulator solely not on actual playing cards. One other declination can be the submit issuance enabled version that may be the excessive finish embeddable model of the Working System, focused for prime finish playing cards with submit issuance services with a loader linker. On the opposite eternity can be the minimal version, focused for low finish playing cards, with none submit issuance capabilities, that may have a a lot smaller footprint.
On this task we've got highlighted some options of an embedded java Working System appropriate for subsequent technology good playing cards thought of as java micro server platforms. Three vital java Working System attribute have been defined class file format acquisition, multithreaded help and unified reminiscence administration. Their implementation has been proven possible and their utilization and benefits has been defined within the context of configurable card platform structure. Due to instruments such shell console, debugger, ROMizer and Serialzier, the migration path from a wealthy platform configuration as much as a custom-made platform configuration has been defined.
The general benefits of this embedded java Working System structure is its adaptability for getting used, on one hand as full fledge java surroundings to shortly develop and take a look at applications and on the one other hand as an engineering surroundings for mass manufacturing of optimized embedded code hosted by restricted gadgets. Although initially developed within the context good playing cards, such structure could possibly be appropriate in any embedded system gadget wherein the java improvement platform can totally different from the ultimate Java deployment platform.
 The Java Card Digital Machine specification 2.1.1. Solar Microsystems
 Java 2 Micro Version, Solar Microsystems
 Java Digital Machine Specification,
Tim Lindholm, Frank Yellin. Solar Microsystems.
 Java Language Specification,
James Gosling, Invoice Pleasure, Man Steele, Gilad Bracha. Solar Microsystems.
 The JEFF File Format, J-Consortium
 J2ME Related Restricted System Configuration
 Sim API for Java Card, ETSI TS 143 019 V5.2.Zero (2002-03)
 Concurrent Programming in Java. D. Lea. Solar Microsystems, 1999.
ISBN Zero-201-31009-Zero, Addison-Wesley
 Java Platform Debugger Structure, Solar Microsystems,
Grasp of Science BITE
Modern Expertise 1