Prototaip OS Phantom domestik berdasarkan Genode akan siap sebelum akhir tahun ini

Dmitry Zavalishin bercakap tentang projek mengalihkan mesin maya sistem pengendalian Phantom untuk berfungsi dalam persekitaran OS mikrokernel Genode. Temu bual menyatakan bahawa versi utama Phantom sudah sedia untuk projek perintis, dan versi berdasarkan Genode akan dibawa kepada kesediaan untuk digunakan pada akhir tahun ini. Pada masa yang sama, hanya prototaip konsep yang boleh dilaksanakan telah diumumkan di laman web projek setakat ini, kestabilan dan kefungsiannya belum dibawa ke tahap yang sesuai untuk kegunaan industri, dan antara rancangan terdekat ialah pembentukan versi alfa sesuai untuk percubaan oleh pembangun pihak ketiga.

Kod projek diedarkan di bawah lesen LGPL, tetapi perubahan terakhir dalam repositori utama adalah bertarikh November 2019. Aktiviti awam yang berkaitan dengan projek itu tertumpu di repositori dengan garpu untuk Genode, yang sejak Disember 2020 telah diselenggara oleh Anton Antonov, seorang pelajar dari Universiti Innopolis.

Sejak awal 2000-an, sistem pengendalian Phantom telah dibangunkan sebagai projek peribadi Dmitry Zavalishin, dan sejak 2010 ia telah dipindahkan di bawah sayap syarikat Zon Digital yang dicipta oleh Dmitry. Sistem ini terkenal kerana tumpuannya pada kebolehpercayaan yang tinggi dan penggunaan konsep "semuanya adalah objek" dan bukannya "semuanya adalah fail", yang menghapuskan penggunaan fail disebabkan oleh pemeliharaan keadaan ingatan dan kitaran berterusan kerja. Aplikasi dalam Phantom tidak ditamatkan, tetapi hanya dijeda dan disambung semula dari tempat mereka berhenti. Semua pembolehubah dan struktur data boleh disimpan selama yang diperlukan oleh aplikasi, dan pengaturcara tidak perlu berhati-hati untuk menyimpan data.

Aplikasi dalam Phantom disusun menjadi bytecode, yang berjalan dalam mesin maya berasaskan tindanan, serupa dengan mesin maya Java. Mesin maya menyediakan ketekunan memori aplikasi - sistem secara berkala mengepam syot kilat keadaan mesin maya kepada media berterusan. Selepas penutupan atau ranap, kerja boleh diteruskan bermula dari petikan memori yang disimpan terakhir. Syot kilat dibuat secara tidak segerak dan tanpa menggantung mesin maya, tetapi syot kilat menangkap hirisan sekali, seolah-olah mesin maya dihentikan, disimpan ke cakera dan dimulakan semula.

Semua aplikasi berjalan dalam ruang alamat global yang sama, yang menghapuskan keperluan untuk menukar konteks antara kernel dan aplikasi, dan sangat memudahkan dan mempercepatkan komunikasi antara aplikasi yang berjalan dalam mesin maya yang boleh bertukar objek melalui laluan rujukan. Pemisahan akses dijalankan pada tahap objek, rujukan yang hanya boleh diperolehi dengan memanggil kaedah yang sepadan (tiada aritmetik penunjuk). Sebarang data, termasuk nilai angka, dianggap sebagai objek berasingan.

Untuk aplikasi, kerja kelihatan berterusan dan tidak bergantung pada but semula OS, ranap sistem dan penutupan komputer. Model pengaturcaraan untuk Phantom dibandingkan dengan menjalankan pelayan aplikasi yang tidak pernah berhenti untuk bahasa pengaturcaraan objek. Memindahkan program Java untuk Phantom dianggap sebagai salah satu cara utama untuk membangunkan aplikasi, yang difasilitasi oleh persamaan mesin maya Phantom dengan JVM. Sebagai tambahan kepada pengkompil bytecode untuk bahasa Java, projek itu merancang untuk mencipta penyusun untuk Python dan C#, serta pelaksanaan penterjemah daripada kod perantaraan WebAssembly.

Untuk melaksanakan operasi yang memerlukan prestasi tinggi, seperti pemprosesan video dan audio, adalah mungkin untuk menjalankan objek binari dengan kod asli dalam benang berasingan (LLVM digunakan untuk membina objek binari). Untuk mengakses perkhidmatan kernel peringkat rendah, beberapa kelas VM ("dalaman" kelas) dilaksanakan pada peringkat kernel OS. Untuk menjalankan aplikasi Linux, lapisan POSIX disediakan yang mencontohi panggilan yang diperlukan untuk pengendalian proses Unix (ketekalan untuk aplikasi dalam lapisan POSIX belum disediakan).

Prototaip OS Phantom domestik berdasarkan Genode akan siap sebelum akhir tahun ini

OS Phantom tradisional, sebagai tambahan kepada mesin maya, termasuk kernelnya sendiri dengan pelaksanaan benang, pengurus memori, pengumpul sampah, mekanisme penyegerakan, sistem I / O, dan pemacu untuk bekerja dengan peralatan, yang merumitkan dengan ketara membawa projek kepada kesediaan untuk kegunaan meluas. Secara berasingan, komponen dengan susunan rangkaian, subsistem grafik dan antara muka pengguna sedang dibangunkan. Perlu diperhatikan bahawa subsistem grafik dan pengurus tetingkap berfungsi pada peringkat kernel.

Untuk meningkatkan kestabilan, kemudahalihan dan keselamatan projek, percubaan telah dibuat untuk memindahkan mesin maya Phantom untuk berfungsi menggunakan komponen sistem pengendalian mikrokernel terbuka Genode, yang pembangunannya diselia oleh syarikat Jerman Genode Labs. Bagi mereka yang ingin bereksperimen dengan Phantom berdasarkan Genode, persekitaran binaan khas berdasarkan Docker telah disediakan.

Menggunakan Genode akan memungkinkan untuk menggunakan mikrokernel dan pemacu yang telah diuji, serta membawa pemacu ke dalam ruang pengguna (dalam bentuk semasa mereka, pemacu ditulis dalam C dan dijalankan pada peringkat kernel Phantom). Khususnya, adalah mungkin untuk menggunakan mikrokernel seL4, yang telah lulus pengesahan matematik kebolehpercayaan, mengesahkan bahawa pelaksanaan mematuhi sepenuhnya spesifikasi yang dinyatakan dalam bahasa formal. Kemungkinan menyediakan bukti kebolehpercayaan yang serupa untuk mesin maya Phantom sedang dipertimbangkan, yang akan membolehkan pengesahan keseluruhan persekitaran OS.

Kawasan aplikasi utama pelabuhan berasaskan Genode ialah pembangunan aplikasi untuk pelbagai peranti industri dan terbenam. Pada masa ini, satu set perubahan untuk mesin maya telah disediakan dan pengikatan yang berjalan di atas Genode telah ditambah untuk komponen kegigihan kernel dan antara muka peringkat rendah utama. Adalah diperhatikan bahawa mesin maya Phantom sudah boleh berfungsi dalam persekitaran Genode 64-bit, tetapi VM masih belum dilaksanakan dalam mod kegigihan, subsistem pemacu perlu diolah semula, dan komponen dengan susunan rangkaian dan subsistem grafik telah untuk disesuaikan untuk Genode.

Prototaip OS Phantom domestik berdasarkan Genode akan siap sebelum akhir tahun ini
Prototaip OS Phantom domestik berdasarkan Genode akan siap sebelum akhir tahun ini
Prototaip OS Phantom domestik berdasarkan Genode akan siap sebelum akhir tahun ini


Sumber: opennet.ru

Tambah komen