J9 |
La machine virtuelle Java embarquable d'IBM
Au coeur de toutes nos solutions Java, on trouve la machine virtuelle J9™ d'IBM, qui interprète les bytecodes. La machine J9 virtuelle implémente une couche architecturale configurable, compacte, rapide, et prédictible qui fournit une interface constante aux programmes d'application indépendamment du matériel ou du système d'exploitation. J9 fonctionne sur un système d'exploitation (PalmOS, PocketPC, QNX, Linux incorporé, OSE, ITRON, etc.) et contrôle les interfaces avec le matériel et le système d'exploitation. Pour cette raison, la machine virtuelle est soigneusement conçue de façon à assurer sa portabilité. Elle est composée d'une couche indépendante du système d'exploitation qui utilise les ressources les plus appropriées du RTOS sous-jacent
J9 a été optimisée pour chacune des plateformes de référence supportées, ce qui est fondamental quand chaque octet de mémoire compte et que la performance de votre application est en jeu. Issue de 15 ans d'expérience dans le marché des machines virtuelles embarquées, J9 est dores et déjà utilisée en production et a prouvé, lors de tests indépendants, qu'elle offre un environnement d'exécution rapide aux systèmes embarqués.
Pour des ingénieurs qui ont besoin de connaître la moindre ligne de code déployée sur leur équipement, J9 offre une flexibilité maximale et un contrôle complet des ressources utilisées. La machine virtuelle J9 est confiurable sur un grand nombre de points, dont entre autres:
- Fonctionalités supportées (par exemple le chargement dynamique de classes).
- Utilisatio mémoire et taille de la pile.
- Taille des incréments d'allocation mémoire, taille de la ROM et de la RAM pour les chargements de classes.
Par ailleurs, les bibliothèques de classes incluses apportent à l'ingénieur la plus grande flexibilité dans le nécéssaire compromis entre les fonctionnalités et l'encombrement mémoire. Pour garder l'environnement d'exploitation et l'application aussi petits que possible, il est possible d'utiliser SmartLinker™, qui permet d'éliminer du code de l'application et des bibliothèques de classes jusqu'à 30% de classes, méthodes et champs inutiles.
La machine virtuelle J9 emploie une base de code source unique pour toutes les versions. Lors du portage d'une application sur un grand nombre de machines que possible, la présence d'une implémentation cohérente de la machine virtuelle sur les différents environnements rend la tâche plus facile et plus rapide. La machine virtuelle peut en effet isoler l'application des nuances de chaque environnement différent. Certains concurrents ont une machine virtuelle pour CLDC, une seconde pour CDC et ainsi de suite : Chaque fois qu'une application est portée entre les diverses machines virtuelles, des problèmes apparaissent, en raison des implémentations différentes.
La machine virtuelle J9 d'IBM est générée à partir d'une base de source unique, pour des plateformes multiples (PPC, SH4, x86, etc.), des systèmes d'exploitation diférents (PalmOS, WinCE, QNX, OSE, Linux, etc.) et des configurations/profils variés (MIDP, CLDC, CDC, etc.) de sorte que le comportement de la machine virtuelle soit toujours identique. Le portage des applications d'une configuration à une autre et d'une plateforme à une autre est alors grandement simplifié.