JavaRush /Java Blog /Random-IT /In teoria su bytecode, JVM e microcontrollori | Codice Ja...
Gro
Livello 19
Минск

In teoria su bytecode, JVM e microcontrollori | Codice Java per MK

Pubblicato nel gruppo Random-IT
Bozza di articolo. Alla fine scriverò diversi articoli in stile wiki, secondo il seguente schema:

Argomento: Dove e come funziona Java
- Informazioni sulla struttura di Java
- Informazioni sull'hardware
- Come funziona questo software sull'hardware

L'articolo riguardava i problemi che ho riscontrato. Dopo aver studiato le informazioni, le ho integrate con le risposte.
È un misto degli argomenti sopra.

Ciao!

Prefazione (Offtopic)
Avevo e ho tuttora un desiderio crescente di costruire una sorta di unità completamente fisica.
Un'unità basata su un'idea semplice che mi ha completamente assorbito.
Un’idea che ha segnato la direzione del mio sviluppo per i prossimi dieci anni.
In teoria, il progetto di un dispositivo è già pronto a metà, implementando solo una piccola parte delle capacità di quel colosso pianificato.

In questo momento, quando ho finalizzato il progetto del semilavorato, dopo essermi immerso più in dettaglio nei componenti, mi sono trovato di fronte alla necessità di controllare i servomotori e, di conseguenza, programmare alcuni "cervelli".

È qui che entrano in gioco una serie di domande che possono essere riassunte in “È possibile, e come, forzare il MK ad eseguire il codice Java?”




Corpo. Dettagli sulle domande.
Ricordiamo che il codice Java che scriviamo viene convertito in codice byte, il quale, a sua volta, viene interpretato dalla JVM in codice macchina, codice costituito da comandi compresi dall'hardware. Tutti comprendono il motivo di questa particolare situazione: portabilità/portabilità abbinata ad una maggiore velocità (rispetto alle lingue semplicemente interpretate).

Dopo aver scoperto questo, ho avuto domande che sono rimaste senza risposta, sono spuntate fuori e ora sono state integrate con altre nuove.
1. È possibile, utilizzando gli strumenti JVM standard, convertire completamente tutto il codice byte in codice macchina contemporaneamente/compilarlo?
se false. Esistono strumenti di terze parti? Almeno in qualche modo?

2. La JVM supporta microcontrollori/controller? (Non so molto sui “cervelli” di ferro; se qualcuno lo sa, per favore me lo dica).
se vero Ci sono differenze/particolarità rispetto al lavoro sui nostri soliti PC?




Aggiornato! 09.04
Informazioni su 1. Non è possibile eseguire il codice alla velocità della macchina utilizzando uno strumento standard (ovvero JVM), almeno questo è quello che ci dice il wiki , ma da lì è diventato chiaro che esiste uno strumento di terze parti: GCJ . È un'alternativa alla JVM e ha un bel bonus nel suo arsenale. Non sono riuscito a trovare informazioni esatte sulle piattaforme (hardware) per le quali è supportata la compilazione - "molte".
La differenza tra codice byte e codice nativo:
1) il nativo si avvia più velocemente
2) Non ci sono garanzie che il nativo funzioni più velocemente
3) Come credo, il nativo non porterà il sistema operativo e la JVM, il che influisce in modo significativo sulla quantità richiesta per funzionamento del programma ROM .

Forse questa soluzione può fungere da alternativa alla versione ME .
(Domanda difficile, perché:
1) Non è noto se GCJ supporti tali piattaforme hardware a basse prestazioni.
2) Non ci sono informazioni sulle prestazioni di questo codice.

Aggiornato. 11.04
Informazioni 2. Qualsiasi versione del linguaggio Java, sia esso ME, SE o Embedded, funziona in tandem con JRE, essendo interpretato. Fatta eccezione per il caso sopra e per i due futuri descritti di seguito.
In primo luogo, ci sono stati tentativi di escludere il sistema operativo dalla catena, sostituendolo con il proprio strumento esclusivamente orientato a Java. Di cosa si tratta, qui .
In secondo luogo, si è scoperto che esistono processori orientati a Java, la loro caratteristica è un coprocessore integrato che interpreta il codice byte nell'hardware (! Non nel software) e lo invia per l'esecuzione.
Ulteriori informazioni su Jazelle .
È ricco qui .


Offtopic
L'idea in questione è il "feedback", una tipologia specificatamente implementata nel futuro prototipo: pressione/resistenza alla pressione.
Cogli questa opportunità per. Leggendo le persone di livello 15-25, creiamo una piccola comunità per la comunicazione/tete-a-tete. Perché da solo non c'è coraggio e, ancora di più, orrore completo.

Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION