Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Oracle Java SE Embedded: introduzione e installazione

Cosa sono i sistemi embedded? Perché scegliere Java per sviluppare App dedicate ad essi? Rispondiamo a queste domande e installiamo Oracle Java SE Embedded
Cosa sono i sistemi embedded? Perché scegliere Java per sviluppare App dedicate ad essi? Rispondiamo a queste domande e installiamo Oracle Java SE Embedded
Link copiato negli appunti

I sistemi Embedded sono dispositivi computerizzati che differiscono per caratteristiche e uso dalle architetture Desktop alle quali siamo generalmente abituati. Un sistema Embedded è un sistema dedicato non pensato per usi generali, con un carico di lavoro prevedibile, e con funzioni ben definite in fase di fabbricazione che non possono essere successivamente modificate.

Da un punto di vista fisico sono dotati di un hardware personalizzato rappresentato da sensori e attuatori. Accuratamente ottimizzati per utilizzare la minore quantità possibile di risorse necessarie al loro funzionamento, un Sistema Embedded non tollera malfunzionamenti e generalmente non può subire fix correttive dopo il suo deploy su un particolare device.

Esempi di sistemi Embedded sono i POS System, Lottery/Game Systems, Medical Image Systems, RFID Readers, Netbooks, Network e Management Systems. L'interazione tra un utente e un sistema Embedded avviene attraverso l'utilizzo di pulsanti e schermi sensibili al touch.

Perchè utilizzare Java per un sistema Embedded?

In origine i sistemi Embedded erano programmati in linguaggio assembler ma la crescita delle risorse hardware e le pressioni dovute al time-to-market e i costi di sviluppo software hanno portato all'utilizzo dei linguaggi C e C++ più portabili e con meno probabilità di avere errori di programmazione.

Su questa linea la legge di Moore e altri fattori hanno reso il linguaggio Java attrattivo per tali sistemi. Tra questi fattori troviamo la disponibiltà di programmatori Java con conoscenze su sistemi enterprise e altri domini non-embedded. Queste conoscenze e skill diffuse nel mondo possono essere estese ai sistemi Embedded portando allo sviluppo di applicazioni Java in questo dominio.

Oracle Java SE Embedded

Il cuore di un sistema Java SE Embedded è la capacità di personalizzare il Runtime Environment. Il Java Runtime Environment (JRE) consiste di una Java Virtual Machine (JVM), librerie e toolkits.

Una tipica JRE include:

  • una JVM che verifica e traduce il bytecode in istruzione CPU predisponendosi per la sua esecuzione.
  • Un Memory Manager che interagisce con il sistema operativo per l'allocazione dinamica della memoria (heap) e un suo riuso automatico (garbage collector).
  • API che forniscono servizi come l'accesso al file system, database e interfacce grafiche.
  • Un launcher: un tool da riga di comando in grado di eseguire una JRE per un'applicazione Java.

Installazione

Oracle Java SE Embedded è un set di componenti grazie ai quali è possibile definire una JRE personalizzata che rispetti i requisiti necessari per il funzionamento su un sistema Embedded. Con Oracle Java SE Embedded siamo quindi in grado di sviluppare applicazioni per sistemi Embedded.

Possiamo installare questo ambiente accedendo al seguente URL. Le scelte possibili per il download dipendono dall'architettura di riferimento:

  • ARMv5/ARMv6/ARMv7 Linux - SoftFP ABI, Little Endian 2.
  • ARM v6/v7 Linux - VFP, HardFP ABI, Little Endian 1.
  • x86 Linux Small Footprint - Headless.

Nel nostro caso scegliamo x86 Linux Small Footprint - Headless scaricando il file ejdk-8u211-linux-i586.tar.gz. Per il download è necessaria la registrazione con cui attivare un account Oracle.

Prima di procedere con l'installazione verifichiamo di avere le JDK 8 installate e la variabile di ambiente JAVA_HOME definita. Se cosi non fosse preliminarmente sarà necessario installare un ambiente Java 8 classico.

In questo articolo consideriamo l'installazione di Oracle Java SE Embedded per un ambiente Linux. Supponendo di aver definito una directory di nome JavaEmb e di aver copiato in essa il file ejdk-8u211-linux-i586.tar.gz posizioniamoci al suo interno utilizzando il terminale Linux ed eseguiamo i comandi:

gunzip *.gz
tar -xvf *.tar

ottenendo cosi la directory ejdk1.8.0_211. Utilizziamo il comando export di Linux in modo tale da definire una variabile di ambiente di nome EJDK_HOME che punti al path assoluto che conduce alla directory ejdk1.8.0_211. Se l'installazione è stata completata con successo eseguendo i seguenti comandi:

cd $EJDK_HOME
bin/jrecreate.sh --help

il risultato dovrebbe essere la visualizzazione della documentazione sull'utilizzo del comando jrecreate. Il jrecreate tool è l'applicazione che permette la creazione di JRE personalizzate.

Ti consigliamo anche