JavaRush /Java Blog /Random-ID /Secara teori tentang bytecode, JVM dan mikrokontroler | K...
Gro
Level 19
Минск

Secara teori tentang bytecode, JVM dan mikrokontroler | Kode Java untuk MK

Dipublikasikan di grup Random-ID
Draf artikel. Pada akhirnya, saya akan menulis beberapa artikel mirip wiki, sesuai dengan skema berikut:

Topik: Di mana dan bagaimana Java bekerja
- Tentang struktur Java
- Tentang perangkat keras
- Bagaimana perangkat lunak ini bekerja pada perangkat keras

Artikel tersebut tentang masalah yang saya temui. Setelah mempelajari informasinya, saya melengkapinya dengan jawaban.
Ini adalah campuran dari topik di atas.

Halo!

Kata Pengantar (Offtopic)
Saya memiliki dan masih memiliki keinginan yang semakin besar untuk membangun semacam unit fisik sepenuhnya.
Sebuah unit berdasarkan satu ide sederhana yang benar-benar menyerap saya.
Sebuah ide yang menjadi arah perkembangan saya sepuluh tahun ke depan.
Secara teori, desain suatu perangkat sudah setengah jadi, mengimplementasikan sebagian kecil dari kemampuan raksasa yang direncanakan tersebut.

Saat ini, ketika menyelesaikan desain setengah jadi, setelah membenamkan diri dalam komponen secara lebih detail, saya dihadapkan pada kebutuhan untuk mengontrol motor servo dan, karenanya, memprogram beberapa “otak”.

Di sinilah serangkaian pertanyaan muncul, yang dapat diringkas dalam “Apakah mungkin, dan bagaimana, memaksa MK untuk mengeksekusi kode java?”




Tubuh. Detail tentang pertanyaan.
Kita ingat bahwa kode java yang kita tulis diubah menjadi kode byte, yang selanjutnya diinterpretasikan oleh JVM menjadi kode mesin, kode yang terdiri dari perintah yang dipahami oleh perangkat keras. Semua orang memahami alasan situasi khusus ini - portabilitas/portabilitas ditambah dengan kecepatan yang lebih tinggi (dibandingkan dengan bahasa yang ditafsirkan secara sederhana).

Setelah saya mengetahui hal ini, saya memiliki pertanyaan yang belum terjawab, muncul dan sekarang ditambah dengan pertanyaan baru.
1. Apakah mungkin, dengan menggunakan alat JVM standar, untuk sepenuhnya mengubah semua kode byte menjadi kode mesin sekaligus/Kompilasi?
jika salah. Apakah ada alat pihak ketiga? Setidaknya entah bagaimana?

2. Apakah JVM mendukung mikrokontroler/pengendali? (Saya tidak tahu banyak tentang “otak” besi; jika ada yang tahu, tolong beri tahu saya).
jika benar, apakah ada perbedaan/keistimewaan dengan bekerja di PC biasa?




Diperbarui! 09.04
Tentang 1. Tidak mungkin menjalankan kode dengan kecepatan mesin menggunakan alat standar (artinya JVM), setidaknya itulah yang dikatakan wiki kepada kita , tetapi dari sana menjadi jelas bahwa ada alat pihak ketiga - GCJ . Ini adalah alternatif dari JVM dan memiliki bonus bagus di gudang senjatanya. Saya tidak dapat menemukan informasi pasti tentang platform (perangkat keras) yang mendukung kompilasi - “banyak”.
Perbedaan antara kode byte dan kode asli:
1) kode asli dijalankan lebih cepat
2) Tidak ada jaminan bahwa kode asli akan bekerja lebih cepat
3) Menurut saya, kode asli tidak akan membawa OS dan JVM, yang secara signifikan mempengaruhi jumlah yang diperlukan untuk pengoperasian program ROM .

Mungkin solusi ini bisa menjadi alternatif dari versi ME .
(Pertanyaan besar dan kuat, karena:
1) Tidak diketahui apakah GCJ mendukung platform perangkat keras berkinerja rendah.
2) Tidak ada informasi tentang kinerja kode ini.

Diperbarui. 11.04
Tentang 2. Versi bahasa Java apa pun, baik ME, SE atau Embedded, bekerja bersama-sama dengan JRE, sedang ditafsirkan. Kecuali untuk kasus di atas dan dua kasus di masa depan yang dijelaskan di bawah.
Pertama, ada upaya untuk mengeluarkan OS dari rantainya, menggantinya dengan alat mereka sendiri yang eksklusif berorientasi Java. Tentang apa itu, di sini .
Kedua, ternyata ada prosesor yang berorientasi Java, fiturnya adalah koprosesor bawaan yang menafsirkan kode byte di perangkat keras (! bukan di perangkat lunak) dan mengirimkannya untuk dieksekusi.
Baca lebih lanjut tentang Jazelle . Di sini
kaya .


Offtopic
Ide yang dimaksud adalah “umpan balik”, tipe yang diterapkan secara khusus dalam prototipe masa depan – ketahanan terhadap tekanan/tekanan.
Manfaatkan kesempatan ini untuk. Membaca orang level 15-25, mari buat komunitas kecil untuk komunikasi/tete-a-tete. Karena sendirian tidak ada nyali sama sekali, dan terlebih lagi - horor total.

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