Next: Interpretált és dinamikus Up: A nyelv legfontosabb tulajdonságai Previous: Objektum orientált   Tartalomjegyzék


1.5.1.3       Architektúra-független és hordozható

Napjaink hálózatait heterogén hardver- és szoftver architektúrájú számítógépek alkotják. A programok fejlesztését nagymértékben megkönnyítené, ha a forráskódból előállított program bármely architektúrán azonos módon futna. Ennek a célnak az elérése érdekében a Jáva nyelv nem tartalmaz architektúra- vagy implementációfüggő elemeket. A C nyelvvel ellentétben a beépített adattípusok (pl. int) mérete nyelvi szinten meghatározott.

Ahhoz, hogy a lefordított program változtatás nélkül futtatható legyen különböző hardver architektúrákon, a fordítóprogram a programot nem egy konkrét processzor gépi kódjára, hanem egy képzeletbeli hardver – a Jáva virtuális gép - utasításrendszerére fordítja le. Az így létrejött közbülső, ún. Bájt kódot töltjük le a célarchitektúrára, ahol a virtuális gépet megvalósító program értelmezi és hajtja végre.

A hordozhatóság nem csak a virtuális gépi utasítások, hanem a nyelv mellet szabványosított rendszerkönyvtárak szintjén is jelentkezik, ezek a könyvtárak valósítják meg a legfontosabb, operációs rendszerekhez kötődő feladatokat, mint például a be- és kiviteli rendszert, vagy a programok grafikus kezelői felületét. Egy új architektúrán akkor futtathatók a Jáva programok, ha már implementálták rá a Jáva virtuális gépet, beleértve a rendszerkönyvtárakat is. A virtuális gépet C-ben írták, a kód POSIX.1 szabványnak megfelelő operációs rendszert tételez fel, így viszonylag kis munkával hordozható.


Next: Interpretált és dinamikus Up: A nyelv legfontosabb tulajdonságai Previous: Objektum orientált   Tartalomjegyzék

 
Misóka Zoltán 2000. 10. 05.