Nota: Prima di utilizzare questo prodotto e le relative informazioni, consultare la sezione Informazioni particolari.
Questa edizione del README si rifersce a IBM zSeries Runtime Environment per Linux, Java 2 Technology Edition, e a tutti i successivi rilasci, versioni e modifiche se non diversamente specificato nelle nuove edizioni.
(c) Copyright IBM Corporation 1999, 2002. Tutti i diritti riservati.
(c) Copyright Sun Microsystems, Inc. 1997, 2001. 901 San Antonio Rd., Palo Alto, CA 94303 USA. Tutti i diritti riservati.
Limitazioni per gli utenti degli Stati Uniti d'America. L'uso, la duplicazione o la divulgazione sono limitati dal GSA ADP Schedule Contract con l'IBM Corporation.
Questo file README contiene le informazioni relative al pacchetto Runtime Environment per Linux fornito con IBM(R) zSeries Developer Kit per Linux, Java(TM) 2 Technology Edition, (Developer Kit per Linux) a Livello Sun SDK 1.3.1.
Il Runtime Environment consente solo di eseguire applicazioni Java. Se si desidera scrivere e quindi eseguire applicazioni Java, bisogna installare il Developer Kit per Linux. Se si dispone del Developer Kit per Linux, non è necessario disporre del Runtime Environment, che è un sottoinsieme del Developer Kit.
Per un elenco delle distribuzioni su cui è stato testato il
Developer Kit per Linux, consultare:
http://www-106.ibm.com/developerworks/java/jdk/linux/tested.html
Runtime Environment per Linux contiene l'insieme secondario di classi richiesto per creare un ambiente Java runtime e per eseguire i programmi Java. Inoltre, contiene Java Virtual Machine, le classi Java principali e i file di supporto. Runtime Environment per Linux contiene solo una sottoserie delle classi disponibili in Java Developer Kit.
File inclusi in Runtime
Environment per Linux
Runtime Environment per Linux comprende i file .so di cui non è possibile eseguire il debug e file di classi per supportare un programma al momento dell'esecuzione. Runtime Environment per Linux non include strumenti di sviluppo, come, ad esempio, appletviewer oppure javac, oppure classi specifiche di un sistema di sviluppo.
Inoltre, i pacchetti Java Authentication and Authorization Service (JAAS) consentono l'uso di Runtime Environment per Linux.
Il file LICENSE_xx.html contiene l'Accordo di licenza per Runtime Environment per Linux. it è l'abbreviazione della locale.
Per visualizzare o stampare l'accordo di licenza, aprire il file in un browser Web.
Compilatore JIT (just-in-time)
Il compilatore JIT (just-in-time) (libjitc.so) genera dinamicamente un codice macchina per le sequenze di codici di tipo bytecode di uso frequente in un'applicazione o in un'applet Java durante l'esecuzione.
Runtime Environment per Linux include il compilatore JIT (libjitc.so), che è abilitato per impostazione predefinita. Per individuare un problema relativo ad un'applicazione Java, ad un'applet o al compilatore stesso, è possibile disabilitare il JIT. Per disabilitare JIT, digitare quanto segue in una richiesta comandi shell:
export JAVA_COMPILER=NONE
Per abilitare il JIT, digitare quanto segue in una richiesta comandi shell:
unset JAVA_COMPILER
Per verificare se JIT è abilitato, in una richiesta comandi shell digitare:
java -version
Se il JIT è in uso, viene visualizzato un messaggio che comprende:
JIT enabled: jitc
In caso contrario, viene visualizzato il seguente messaggio:
JIT disabled
Native Method Interface e
Java Native Interface
IBM non supporta Native Method Interface in questo rilascio. Non utilizzare tale interfaccia nelle proprie applicazioni.
Java Native Interface (JNI) è compreso nel Runtime Environment. Per informazioni sull'utilizzo di JNI, consultare il sito Web della Sun:
Configurazione di Runtime
Environment per Linux
Dopo aver installato Runtime Environment per Linux, editare lo script shell ed aggiungere all'istruzione PATH la seguente directory:
Se Runtime Environment per Linux viene installato in una directory diversa da
Java è in grado di visualizzare tutti i caratteri Unicode ma la maggior parte delle versioni di Linux installa solo i font necessari alla propria lingua. E' possibile scaricare font IBM che consentono di visualizzare la serie completa dei caratteri Unicode. Tali font non sono inclusi nel pacchetto Developer Kit per Linux in quanto, essendo di dimensioni molto grandi, non tutti gli utenti ne hanno bisogno. L'IBM fornisce due font Unicode, ciascuno dei quali personalizzato dalla nazione. Gli utenti della Cina e della Corea dovranno usare le versioni specifiche per la propria nazione mentre tutti gli altri dovranno usare la versione giapponese di tali font.
E' possibile scaricare i font dal sito Web developerWorks all'indirizzohttp://www.ibm.com/developer/java/. Per facilitare la scelta dei font da scaricare vengono fornite delle descrizioni.
Per installare un font, memorizzare il file nella directory /opt/IBMJava2-ppc-131/jre/lib/fonts.
Se i font vengono scaricati divisi in parti, è necessario ricomporli in un file per ciascun font. Per eseguire questa operazione, verificare che le varie parti si trovino nella directory /opt/IBMJava2-ppc-131/jre/lib/fonts ed utilizzare il comando cat.
Ad esempio, se il font Times New Roman WT J viene scaricato in parti, per ricomporlo immettere il seguente comando:
cat tnrwt_j.t01 tnrwt_j.t02 tnrwt_j.t02 > tnrwt_j.ttf
Quando si esegue l'installazione su un sistema Red Hat, per consentire al server dei font di trovare i font Java TrueType, eseguire:
Bisogna eseguire questa operazione in fase di
installazione e bisogna essere
collegati come utente root
per eseguire il comando.
Se si desidera utilizzare il server BEA Weblogic, in fase di installazione dei pacchetti Developer Kit per Linux bisogna deselezionare l'installazione facoltativa di JAAS. Il server BEA Weblogic contiene la propria implementazione di JAAS.
Disinstallazione di Runtime Environment per Linux
Il processo seguito per eliminare Runtime Environment per Linux varia a seconda che sia stato installato il pacchetto RPM o il pacchetto compresso TAR. Per le istruzioni, consultare Disinstallazione del pacchetto RPM oppure Disinstallazione del pacchetto TAR compresso.
Disinstallazione del pacchetto RPM
Per disinstallare Runtime Environment per Linux avendo effettuato l'installazione del pacchetto RPM.
rpm -qa | grep IBMViene visualizzato il nome del pacchetto:
rpm -e IBMJava2-JRE
Disinstallazione del
pacchetto TAR compresso.
Per disinstallare Runtime Environment per Linux, dopo avere installato il pacchetto TAR compresso:
Richiamo di Java Runtime Interpreter
E' possibile richiamare Runtime Environment per Linux da una richiesta comandi shell mediante lo strumento java.
java [-opzioni] nomeclasse <arg>
L'argomento nomeclasse
è il nome del file di classe
da eseguire. Gli argomenti da trasmettere alla classe dovranno
essere posizionati dopo il nomeclasse
sulla riga comandi.
java -jar [-opzioni] filejar <arg>
L'argomento filejar
è il nome del file jar da
eseguire. Gli argomenti da trasmettere al file jar dovranno
essere
posizionati dopo il filejar
sulla riga comandi.
Di seguito sono riportate le opzioni per lo strumento java:
Le opzioni -X non sono standard e sono soggette a modifica senza preavviso.
E' possibile impostare la proprietà di sistema ibm.jvm.bootclasspath utilizzando l'opzione -D descritta nella sezione Richiamo di Java Runtime Interpreter. Il valore di tale proprietà viene usato come percorso di ricerca aggiuntivo, inserito tra un valore qualunque definito da -Xbootclasspath/p: ed il percorso bootclass. Il percorso bootclass può essere quello predefinito oppure quello definito con l'opzione -Xbootclasspath:.
Ricerca numero di build IBM e numero della versione
Per ricevere il numero di build e di versione IBM, digitare quanto segue in una richiesta comandi shell:
java -version
Su un sistema Linux a stack non mobili, indipendente,ente da quanto impostato per -Xss, viene fornita fornita una dimensione di stack nativo minima di 256 KB. Su un sistema Linux a stack mobili, i valori specificati per -Xss vengono applicati. Pertanto, se si sta eseguendo una migrazione da un sistema Linux con stack non mobili, è necessario verificare che tutti i valori -Xss specifichino delle dimensioni sufficienti e non dipendano dal valore minimo di 256 KB.
Passaggio del metodo di immissione nelle lingue DBCS
Nei sistemi DBCS, se si vuole passare ad un altro metodo di immissione bisogna impostare la variabile di ambiente che rappresenta il codice chiave per la commutazione. Facoltativamente, è possibile impostare un'altra variabile di ambiente che rappresenti il modificatore del codice chiave.
Per specificare il codice chiave da usare per la commutazione, impostare la variabile di ambiente IBMJAVA_INPUTMETHOD_SWITCHKEY su una definizione di codice chiave nella classe java.awt.event.KeyEvent come, ad esempio, VK_F4.
Facoltativamente, specificare i modificatori del codice chiave. Per specificarli, impostare la variabile IBMJAVA_INPUTMETHOD_SWITCHKEY_MODIFIERS in una combinazione delle seguenti tre definizioni di maschere contenute in java.awt.event.InputEvent:
Separare le maschere con delle virgole.
Ad esempio, si potrebbe impostare la variabile di ambiente IBMJAVA_INPUTMETHOD_SWITCHKEY_MODIFIERS su ALT_MASK, CTRL_MASK.
Durante l'inizializzazione Java, le due variabili vengono memorizzate.
Accertarsi di averle impostate correttamente, premere un tasto e controllare la combinazione di tasti specificata. Se corrisponde, verrà visualizzato un menu Java concatenato con i metodi di immissione selezionabili.
Questo Developer Kit non comprende i font Devanagari (Devamt.ttf and Devamtb.ttf) nella directory jre/lib/fonts. Invece, laddove appropriato, Java utilizza i font Monotype Unicode (Times New Roman WorldType e Sans Monospace WorldType) forniti con la piattaforma IBM oppure con il prodotto software IBM per supportare i font Devanagari (Hindi).
La seguente pagina Web di Sun contiene un esempio che è possibile scaricare e che contiene informazioni relative alla creazione di una semplice applicazione Java fornita con Runtime Environment per Linux. E' possibile trovare tale esempio al seguente sito Web:
L'esempio illustra come eseguire una semplice transizione, dallo sviluppo di un'applicazione con Developer Kit per Linux alla distribuzione utilizzando Runtime Environment per Linux.
Installazione dell'applicazione su un sistema utente
Dopo aver sviluppato il prodotto, se si desidera disporne, sarà necessario installarlo su un sistema utente, configurare il sistema dell'utente affinché supporti il software e configurare l'ambiente di runtime.
Se si utilizza Runtime Environment per Linux, accertarsi che l'installazione non ricopra un'installazione esistente, a meno che non si tratti di una versione Runtime Environment per Linux precedente.
Per distribuire Runtime Environment per Linux, è possibile installarlo sul proprio sistema e copiare i file di Runtime Environment richiesti nel set di installazione. Se viene scelto questo approccio, è necessario inserire tutti i file richiesti con Runtime Environment per Linux. Il software Runtime Environment per Linux può essere distribuito solo se tutti i file vengono inseriti. Quando viene fornita l'applicazione, essa dispone di una propria copia di Runtime Environment per Linux.
Per informazioni sui file che devono essere redistribuiti, consultare l'Accordo di licenza.
IBM Runtime Environment per Linux, Java 2 Technology Edition, V1.3.1 introduce l'opzione di runtime JVM -Xgcpolicy per la specifica della politica di raccolta dei dati obsoleti.
-Xgcpolicy può avere due valori, optthruput (il valore predefinito) e optavgpause. Questa opzione controlla il comportamento del programma di raccolta dei dati obsoleti, bilanciando il throughput dell'applicazione e del sistema in generale e le pause determinate dalla raccolta dei dati obsoleti.
Il formato dell'opzione ed i suoi valori sono:
-Xgcpolicy:optthrupute
-Xgcpolicy:optavgpause
Quando il tentativo di un'applicazione di creare un oggetto non può essere immediatamente soddisfatto dallo spazio disponibile nell'heap, il programma di raccolta dei dati obsoleti è responsabile dell'identificazione degli oggetti cui non si fa riferimento (obsoleti), della loro cancellazione e della reimpostazione dell'heap su uno stato in cui le immediate e successive richieste di allocazione possono essere soddisfatte rapidamente. Questi cicli di raccolta dei dati obsoleti causano delle occasionali pause impreviste nell'esecuzione del codice dell'applicazione. Quando la dimensione e la complessità delle applicazioni crescono, e gli heap diventano di conseguenza più grandi, questa pausa per la raccolta dei dati obsoleti tende a crescere. Il valore predefinito per la raccolta di dati obsoleti, optthruput, consente un elevato throughput alle applicazioni, ma possono verificarsi queste pause occasionali, che possono andare da alcuni millisecondi a molti secondi, sulla base della dimensione dell'heap e della quantità di dati obsoleti.
Il valore optavgpause riduce notevolmente il tempo speso in queste pause per la raccolta dei dati obsoleti e limita l'effetto della crescita della dimensione dell'heap sulla lunghezza della pausa di raccolta dei dati obsoleti. Questo è particolarmente importante nelle configurazioni con degli heap di notevoli dimensioni. Un heap può essere considerato di notevoli dimensioni quando raggiunge almeno un 1 GB. Le pause vengono ridotte sovrapponendo le attività di raccolta dei dati obsoleti alla normale esecuzione del programma. Questa sovrapposizione determina una piccola riduzione del throughput delle applicazioni.
Quando un heap Java è quasi pieno ed i dati obsoleti da eliminare sono pochi, è possibile che le richieste per nuovi oggetti non possano essere soddisfatte rapidamente poiché non c'è spazio immediatamente disponibile. Se l'heap viene utilizzato quando è quasi pieno, è possibile che le prestazioni delle applicazioni subiscano una riduzione, indipendentemente da quale delle opzioni sopra indicate viene utilizzata: e, se si continua ad inoltrare richieste per ulteriore spazio dell'heap, l'applicazione riceve un errore di Memoria esaurita che determina la chiusura del JVM se l'errore non viene rilevato e risolto. In queste situazioni, si consiglia di aumentare la dimensione dell'heap utilizzando l'opzione -Xmx oppure di ridurre il numero di oggetti di applicazione in uso.
Per ulteriori informazioni sulla regolazione della dimensione dell'heap e del possibile impatto della raccolta dei dati obsoleti sulle prestazioni delle applicazioni, consultare:
Documentazione relativa a Runtime Environment per Linux
IBM fornisce la seguente documentazione runtime:
public interface interface java.lang.Runnable extends java.lang.Object...
In Linux X Window System, the la tastiera è impostata su: 64 0xffe9 (Alt_L) 0xffe7 (Meta_L) e 113 0xffea (Alt_R) 0xffe8 (Meta_R). Per abilitare tale funzione, immettere quanto segue ad una richiesta comandi shell:
xmodmap -pk
Le applicazioni Java che usano molti sottoprocessi possono eccedere la capacità della memoria di sistema. Usare la formula di seguito riportata per effettuare una stima del numero massimo di sottoprocessi utilizzabili da un'applicazione Java:
heap_size(MB) + 2*thread_count < 910 (approssimativamente)
Quando la memoria si è esaurita, JVM oppure JIT riporterà una condizione di errore simile a una tra quelle di seguito riportate:
Exception in thread "main" java.lang.OutOfMemoryError at java.lang.Thread.start(Native Method) at serling.main(serling.java:29) COMPILER ERROR: java/io/ObjectStreamClass.compareClassNames - JIT: Out of memory, emitcode
E' l'indicazione "out of memory" (memoria insufficiente) ad essere significativa, e non i file o i metodi specifici che vengono indicati. E' inoltre possibile che possano seguire messaggi di errore in aggiunta a quelli precedentemente riportati e che non indicano errori aggiuntivi ma, invece, but instead indicate effetti secondari della condizione di mancanza di memoria.
Questo rilascio supporta solo l'inglese ed il giapponese. Il supporto alla lingua giapponese è stato testato solo con TurboLinux Server 6.1 for zSeries and S/390; non è stato testato con SuSE Linux 7.0. Ciò poiché, al momento, solo TurboLinux Server 6.1 for zSeries and S/390 supporta il giapponese.
I componenti Swing possono visualizzare font per il giapponese installando font Japanese WorldType. Consultare la sezione Installazione di font aggiuntivi). L'installazione di font Japanese WorldType non influisce sui componenti AWT components né sui pannelli di commutazione IM. Per evitare questo problema, devono essere installati i font giapponesi aggiuntivi TrueType.
TurboLinux Japan ha reso disponibili i font Japanese TrueType sul sito web http://www.turbolinux.co.jp (cercare la parola: truetype).
Il sistema S/390 non dispone di video grafici nativi ad esso collegati. Pertanto, è richiesto un sistema remoto con visualizzazione grafica. Ci sono due modi per visualizzare le applicazioni X su sistemi in remoto.
TurboLinux Server 6.1 for zSeries and S/390 non dispone di interfacce IM (Input Method) come kinput2. Di conseguenza, per questo rilascio è stata testata solo la seconda opzione.
Sono stati testati i seguenti ambienti:
Sistema | OS | Lingua | Window Manager | Host Attached Input Method Engine |
Java System | TurboLinux for S/390 | Japanese (EUC) | FVWM2 lesstif-mwm, twm (no kinput2) |
Canna 3.5 (no kinput2) |
Graphic Client | TurboLinux Server J6.5 | Japanese (EUC) | Sawfish1 with GNOME | Canna 3.5 with kinput2 FreeWnn with kinput2 |
Nella versione giapponese di Linux, è possibile utilizzare un metodo d'immissione dei caratteri giapponesi, come ad esempio, Canna, ATOK12(TM) SE, Wnn4(TM), o Wnn6. Utilizzare le seguenti sezioni per evitare problemi durante l'utilizzo di tali metodi di immissione del giapponese.
Per collocare un'altra finestra in tale posizione, effettuare le seguenti operazioni:
Queste informazioni sono state sviluppate per prodotti e servizi offerti negli Stati Uniti d'America
E' possibile che la IBM non offra i prodotti, i servizi o le funzioni trattati in questo documento in altri paesi. Consultare il rappresentante commerciale IBM per informazioni relative ai prodotti e servizi disponibili nel proprio paese. Qualunque riferimento a prodotti programmi o servizi IBM non significa che soltanto tali programmi, prodotti o servizi possano essere usati. In sostituzione a quelli forniti dall'IBM, possono essere usati prodotti, programmi o servizi funzionalmente equivalenti che non comportino violazione dei diritti di proprietà intellettuale. In sostituzione a quelli forniti dall'IBM, possono essere usati prodotti, programmi o servizi funzionalmente equivalenti che non comportino violazione dei diritti di proprietà intellettuale. Tuttavia, è responsabilità dell'utente valutare e verificare la possibilità di usare programmi, prodotti o servizi non IBM.
L'IBM può avere brevetti o domande di brevetto in corso relativi a quanto trattato nella presente pubblicazione. La fornitura di questa pubblicazione non implica la concessione di alcuna licenza su di essi. Chi desiderasse ricevere informazioni relative a licenze può rivolgersi per iscritto a:
Chi desiderasse ricevere delucidazioni sulle licenze relative alle informazioni DBCS, può contattare IBM Intellectual Property Department nel proprio paese o rivolgersi per iscritto a:
Il seguente paragrafo non è valido per il Regno Unito o per tutti i paesi le cui leggi nazionali siano in contrasto con le disposizioni in esso contenute:
L'IBM FORNISCE QUESTA PUBBLICAZIONE NELLO STATO IN CUI SI TROVA SENZA ALCUNA GARANZIA, ESPLICITA O IMPLICITA, IVI INCLUSE EVENTUALI GARANZIE DI COMMERCIABILITÀ' ED IDONEITÀ' AD UNO SCOPO PARTICOLARE. Alcune nazioni non escludono le garanzie implicite; di conseguenza la suddetta esclusione potrebbe, in questo caso, non essere applicabile.
Queste informazioni potrebbero contenere imprecisioni tecniche o errori tipografici. Le correzioni relative saranno incluse nelle nuove edizioni. L'IBM si riserva il diritto di apportare miglioramenti o modifiche al prodotto o al programma descritto in qualsiasi momento e senza preavviso.
Tutti i riferimenti a pubblicazioni e a siti Web non dell'IBM contenuti in questo documento sono forniti solo per consultazione. Il materiale presente sui siti web non fa parte di questo prodotto IBM e l'utente si assume ogni rischio relativo al suo utilizzo.
L'IBM può utilizzare o distribuire qualsiasi informazione voi forniate nel modo più appropriato senza incorrere in alcuna obbligazione nei vostri riguardi.
Coloro che detengono la licenza su questo programma e desiderano avere informazioni su di esso allo scopo di consentire: (i) uno scambio di informazioni tra programmi indipendenti ed altri (compreso questo) e (ii) l'uso reciproco di tali informazioni, dovrebbero rivolgersi a:
Queste informazioni possono essere rese disponibili secondo condizioni contrattuali appropriate, compreso, in alcuni casi, l'addebito di un canone.
Il programma su licenza descritto in queste informazioni e tutto il materiale su licenza ad esso relativo sono forniti dall'IBM nel rispetto delle condizioni previste dalla licenza d'uso.
I dati relativi alle prestazioni contenuti nel presente documento sono stati ottenuti in un ambiente controllato. Pertanto, i risultati ottenibili in altri ambienti operativi potrebbero variare significativamente. Alcune rilevazioni sono state effettuate su sistemi in fase di sviluppo e non si garantisce in alcun modo che tali rilevazioni siano uguali su tutti i sistemi. Inoltre, alcune rilevazioni non state effettuate tramite estrapolazione. Pertanto, i risultati effettivi possono essere differenti. Gli utenti devono verificare l'applicabilità dei dati negli specifici ambienti operativi.
Le informazioni relative a prodotti non IBM sono state ottenute dai fornitori di tali prodotti. L'IBM non ha verificato tali prodotti e, pertanto, non può garantirne l'accuratezza delle prestazioni. Eventuali commenti relativi alle prestazioni dei prodotti non IBM devono essere indirizzati ai fornitori di tali prodotti.
IBM è un marchio della International Business Machines Corporation.
Java e tutti i marchi ed i logo basati su Java sono marchi della Sun Microsystems, Inc. La tecnologia Java è posseduta e concessa esclusivamente su licenza dalla Sun Microsystems, Inc.
I nomi di altre società, prodotti e servizi potrebbero essere marchi di altre società.