Jitter secara resmi menjadi bagian dari proyek GNU

Beberapa hari yang lalu dirilis berita bahwa proyek Jitter secara resmi menjadi proyek di bawah sayap Proyek GNU dan sekarang sedang dikembangkan dengan nama GNU Jitter menggunakan infrastruktur GNU dan sesuai dengan kebutuhan proyek.

Bagi mereka yang tidak terbiasa dengan Jitter, Anda harus tahu bahwa itu adalaha adalah implementasi yang memungkinkan untuk menghasilkan mesin virtual portabel dan sangat cepat untuk desain bahasa pemrograman yang sewenang-wenang, yang kinerja eksekusi kodenya jauh lebih unggul daripada interpreter dan mendekati kode kompilasi asli.

Jitter sangat portabel dan VM yang benar akan menunjukkan perilaku yang persis sama pada platform apa pun yang hanya memiliki kompiler dan pustaka C standar; namun, kinerja akan lebih baik menggunakan salah satu arsitektur yang didukung (saat ini: M68k, MIPS, PowerPC, RISC-V, SPARC, x86_64; level 64: Aarch390, Alpha, ARM, SXNUMXx) pada sistem ELF dengan GCC. Tentu saja, Jitter adalah bagian dari proyek GNU dan dirancang terutama untuk digunakan pada sistem GNU.

jitter mengambil sebagai input spesifikasi tingkat tinggi dari instruksi yang didukung oleh mesin virtual, dan dalam output membentuk implementasi mesin virtual yang siap pakai untuk menjalankan instruksi yang diberikan.

Logika setiap instruksi dalam spesifikasi ditentukan menggunakan kode C. Fitur tambahan termasuk dukungan untuk operasi percabangan bersyarat yang sulit diterapkan dalam C dan melekat dalam bahasa pemrograman dinamis, seperti pemeriksaan nilai tag dan pemeriksaan luapan.

Runtime Jitter juga dilengkapi dukungan efisien untuk operasi percabangan bersyarat yang sulit diterapkan hanya dengan menggunakan C, seperti pemeriksaan tag nilai seperti yang diperlukan oleh bahasa yang diketik secara dinamis dan aritmatika dengan pemeriksaan luapan. Kode VM mengakses panggilan prosedur dan operasi pengembalian, dalam banyak kasus mengandalkan mekanisme perangkat keras yang efisien.

Mesin virtual yang dihasilkan diformat dalam C dengan sejumlah kecil sisipan perakit. Konfigurasi disediakan untuk mengaktifkan berbagai pengoptimalan dan memilih mekanisme pengiriman, membuatnya mudah untuk memigrasikan mesin virtual ke platform yang berbeda.

Ini mendukung penggunaan arsitektur register, stack, dan join execution, serta kemampuan untuk mencerminkan struktur data mesin virtual dalam register perangkat keras CPU dan menghubungkan pengumpul sampah.

Kode yang dihasilkan mencakup C API sederhana untuk secara dinamis mengganti dan mengeksekusi kode di mesin virtual, serta program pengontrol untuk mengeksekusi kode secara terpisah dari file teks di mesin virtual.

Kode C yang dihasilkan sangat dikondisikan dan dapat dikonfigurasi untuk dijalankan menggunakan teknik distribusi yang berbeda dari berbagai kecanggihan; teknik pengiriman yang paling efisien bergantung pada beberapa arsitektur khusus, tetapi tidak khusus VM, dukungan perakitan yang disediakan oleh Jitter; semua model pengiriman, tetapi satu juga didasarkan pada ekstensi GNU C.

Terakhir, bagi mereka yang tertarik untuk mengetahui lebih banyak tentangnya, mereka harus mengetahui bahwa kode Jitter asli ditulis dalam C dan tersedia di bawah lisensi GPLv3. Anda dapat mempelajari lebih lanjut di link berikut.

Bagaimana cara mendapatkan Jitter?

Bagi mereka yang tertarik untuk menguji Jitter, mereka dapat memperoleh kode sumber dengan membuka terminal dan mengetikkan perintah berikut di dalamnya:

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

Setelah ini selesai, sekarang kita masuk ke folder yang memiliki kode, kita akan mengeksekusi skrip startup yang digunakan untuk menghasilkan file yang diperlukan untuk mengkonfigurasi dan membangun Jitter, termasuk skrip konfigurasi. Kami melakukan ini dengan:

cd jitter && ./bootstrap

Perlu disebutkan bahwa Jitter mengikuti konvensi GNU untuk konfigurasi dan konstruksi dan mendukung konstruksi dari direktori sumber; pada kenyataannya, ini mendukung kompilasi silang dan bahkan menjalankan rangkaian pengujian dalam kompilasi silang melalui emulator.

./configure && make

Terakhir, untuk mengeksekusi, cukup ketik:

make check


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.