Popcorn ngembangake sistem eksekusi utas sing disebarake kanggo kernel Linux.

Virginia Tech saranake kanggo diskusi dening pangembang kernel Linux, sakumpulan patch karo implementasine sistem eksekusi thread sing disebarake brondong (Distributed Thread Execution), sing ngidini sampeyan ngatur eksekusi aplikasi ing sawetara komputer kanthi distribusi lan migrasi benang transparan ing antarane host. Kanthi Popcorn, aplikasi bisa diluncurake ing siji host banjur dipindhah menyang host liyane tanpa gangguan. Ing program multithreaded, migrasi benang individu menyang host liyane diidini.

Boten kados proyek CRIUKanthi ngidini status proses disimpen lan eksekusi dilanjutake ing sistem liyane, Popcorn nyedhiyakake migrasi sing lancar lan dinamis ing antarane host sajrone eksekusi aplikasi, ora mbutuhake tumindak pangguna lan njamin konsistensi memori virtual ing kabeh host sing mlaku bebarengan.

Wangun tumpukan lunak brondong tambalan menyang kernel Linux lan perpustakaan kanthi tes sing nuduhake carane telpon sistem Popcorn bisa digunakake kanggo migrasi thread ing aplikasi sing disebarake. Ing tingkat kernel, ekstensi menyang subsistem memori virtual wis diusulake kanthi implementasine memori sing disebarake, sing ngidini pangolahan ing host sing beda bisa ngakses papan alamat virtual sing umum lan konsisten. Koherensi kaca memori virtual dijangkepi dening protokol sing ngulang kaca memori menyang host nalika diwaca lan ora sah kaca memori nalika ditulis.

Interaksi antarane host ditindakake kanthi nggunakake panangan tingkat kernel kanggo pesen sing dikirim liwat soket TCP. Kacathet yen TCP/IP digunakake kanggo nyederhanakake debugging lan testing sajrone proses pangembangan. Pangembang ngerti yen, saka perspektif keamanan lan kinerja, TCP/IP dudu cara paling apik kanggo nransfer isi struktur kernel lan kaca memori antarane host. Kabeh host sing mbukak aplikasi sing disebarake kudu duwe tingkat kepercayaan sing padha. Sawise stabilisasi algoritma utama, mode transportasi sing luwih efisien bakal digunakake.

Popcorn wis dikembangake wiwit taun 2014 minangka proyek riset kanggo nyinaoni kemungkinan nggawe aplikasi sing disebarake, benang sing bisa ditindakake ing macem-macem simpul ing heterogen sistem komputasi sing bisa gabungke inti adhedhasar arsitektur pesawat instruction beda (Xeon / Xeon-Phi, ARM / x86, CPU / GPU / FPGA). Setel patch sing diusulake kanggo pangembang kernel Linux mung ndhukung eksekusi ing host kanthi CPU x86, nanging uga ana versi Popcorn Linux sing luwih fungsional, sing ngidini aplikasi bisa digunakake ing host kanthi arsitektur CPU sing beda (x86 lan ARM). Kanggo nggunakake Popcorn ing lingkungan heterogen, sampeyan kudu nggunakake khusus panyusun adhedhasar LLVM. Nalika mbukak distributedly ing sarwa dumadi karo arsitektur padha, mbangun maneh karo compiler kapisah ora dibutuhake.

Popcorn ngembangake sistem eksekusi utas sing disebarake kanggo kernel Linux.

Kajaba iku, bisa dicathet pengumuman proyek sing rada padha Telefork karo implementasine saka API prototipe dhisikan kanggo miwiti pangolahan anak ing komputer liyane ing kluster (kaya garpu (), nanging nransfer proses forked kanggo komputer liyane).
Kode kasebut ditulis ing Rust lan nganti saiki mung ngidini kloning proses sing gampang banget sing ora nggunakake sumber daya sistem kayata file. Nalika telpon telefork digawe, memori lan struktur-related proses kloning menyang host liyane sing nganggo pawang server (telepad). Nggunakake ptrace, bayangan memori saka proses serialized lan, bebarengan karo negara proses lan ndhaftar, ditransfer menyang host liyane. API uga ngijini sampeyan kanggo nyimpen negara proses menyang file lan mulihake liwat iku.

Source: opennet.ru

Add a comment