Jitter secara rasmi menjadi sebahagian daripada projek GNU

Beberapa hari lalu telah dikeluarkan berita bahawa projek itu Jitter secara rasmi menjadi projek di bawah sayap Projek GNU dan kini sedang dibangunkan di bawah nama GNU Jitter menggunakan infrastruktur GNU dan mengikut keperluan projek.

Bagi mereka yang tidak menyedari Jitter, mereka harus tahu bahawa ia adalaha ialah pelaksanaan yang membolehkan menjana mesin maya yang sangat pantas dan mudah alih untuk reka bentuk arbitrari bahasa pengaturcaraan, yang prestasi pelaksanaan kodnya jauh mendahului penterjemah dan hampir dengan kod tersusun asli.

Jitter sangat mudah alih dan VM yang betul akan mempamerkan tingkah laku yang sama pada mana-mana platform yang hanya mempunyai pengkompil dan perpustakaan C standard; walau bagaimanapun, prestasi akan menjadi lebih baik jika salah satu seni bina yang disokong (kini: M68k, MIPS, PowerPC, RISC-V, SPARC, x86_64; tahap kedua: Aarch64, Alpha, ARM, S390x) digunakan pada sistem ELF dengan GCC . Jitter sudah tentu sebahagian daripada projek GNU dan direka bentuk terutamanya untuk digunakan pada sistem GNU.

jitter mengambil sebagai input spesifikasi peringkat tinggi arahan yang disokong untuk mesin maya, dan dalam output ia membentuk pelaksanaan sedia untuk digunakan mesin maya untuk melaksanakan arahan yang diberikan.

Logik setiap arahan dalam spesifikasi ditentukan menggunakan kod C. Ciri tambahan termasuk sokongan untuk operasi cawangan bersyarat yang sukar dilaksanakan dalam C dan wujud dalam bahasa pengaturcaraan dinamik, seperti menyemak nilai teg dan menyemak limpahan.

Masa jalan Jitter juga menampilkan sokongan cekap untuk operasi percabangan bersyarat yang sukar dilaksanakan hanya menggunakan C, seperti menyemak label nilai seperti yang diperlukan oleh bahasa yang ditaip secara dinamik dan aritmetik dengan pemeriksaan limpahan. Kod VM mempunyai akses kepada panggilan balik dan operasi panggilan prosedur, dalam kebanyakan kes bergantung pada mekanisme perkakasan yang cekap.

Mesin maya yang terhasil diformatkan dalam C dengan sebilangan kecil sisipan daripada pemasang. Tetapan disediakan untuk membolehkan pelbagai pengoptimuman dan memilih mekanisme penghantaran, menjadikannya mudah untuk memindahkan mesin maya ke platform yang berbeza.

Ia menyokong penggunaan seni bina perlaksanaan daftar, tindanan dan cantum, serta keupayaan untuk mencerminkan struktur data mesin maya kepada daftar perkakasan CPU dan menghubungkan pengumpul sampah.

Kod yang dijana termasuk API C mudah untuk menggantikan dan melaksanakan kod secara dinamik dalam mesin maya, serta program pemacu untuk melaksanakan secara berasingan kod daripada fail teks dalam mesin maya.

Kod C yang dihasilkan adalah sangat terkondisi dan boleh dikonfigurasikan untuk dijalankan menggunakan teknik pengedaran yang berbeza dengan kecanggihan yang berbeza-beza; teknik penghantaran yang paling cekap bergantung pada beberapa sokongan pemasangan khusus seni bina, tetapi bukan khusus VM, yang disediakan oleh Jitter; semua model penghantaran, tetapi satu juga berdasarkan sambungan GNU C.

Akhir sekali, bagi mereka yang berminat untuk mengetahui lebih lanjut mengenainya, anda harus tahu bahawa kod Jitter asal ditulis dalam C dan tersedia di bawah lesen GPLv3. Anda boleh mengetahui lebih lanjut di pautan berikut.

Bagaimana untuk mendapatkan Jitter?

Bagi mereka yang berminat untuk mencuba Jitter, anda boleh mendapatkan kod sumber dengan membuka terminal dan menaip arahan berikut ke dalamnya:

git clone http://git.ageinghacker.net/jitter

Setelah ini selesai, kini kami teruskan untuk memasuki folder yang mempunyai kod, kami akan melaksanakan skrip permulaan yang digunakan untuk menjana fail yang diperlukan untuk mengkonfigurasi dan membina Jitter, termasuk skrip konfigurasi. Kami melakukan ini dengan:

cd jitter && ./bootstrap

Perlu dinyatakan bahawa Jitter mengikut konvensyen GNU untuk konfigurasi dan membina serta menyokong bangunan daripada direktori sumber; sebenarnya, ia menyokong penyusunan silang dan juga menjalankan suite ujian dalam penyusunan silang melalui emulator.

./configure && make

Akhir sekali, untuk menjalankan, hanya taip:

make check


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.