Rilis MirageOS 3.6, sebuah platform untuk menjalankan aplikasi di atas hypervisor

ambil tempat rilis proyek Mirage OS 3.6, yang memungkinkan Anda membuat sistem operasi untuk satu aplikasi, di mana aplikasi dikirimkan sebagai β€œunikernel” mandiri yang dapat dijalankan tanpa menggunakan sistem operasi, kernel OS terpisah, dan lapisan apa pun. Bahasa OCaml digunakan untuk mengembangkan aplikasi. Kode proyek didistribusikan oleh di bawah lisensi ISC gratis.

Semua fungsionalitas tingkat rendah yang melekat pada sistem operasi diimplementasikan dalam bentuk perpustakaan yang melekat pada aplikasi. Aplikasi ini dapat dikembangkan di OS apa pun, setelah itu dikompilasi menjadi kernel khusus (konsepnya kernel unik), yang dapat berjalan langsung di atas hypervisor Xen, KVM, BHyve dan VMM (OpenBSD), di atas platform seluler, sebagai proses dalam lingkungan yang sesuai dengan POSIX, atau di lingkungan cloud Amazon Elastic Compute Cloud dan Google Compute Engine.

Lingkungan yang dihasilkan tidak mengandung sesuatu yang berlebihan dan berinteraksi langsung dengan hypervisor tanpa driver atau lapisan sistem, yang memungkinkan pengurangan biaya overhead dan peningkatan keamanan secara signifikan. Bekerja dengan MirageOS terbagi dalam tiga tahap: mempersiapkan konfigurasi dengan mengidentifikasi yang digunakan di lingkungan paket OPAM, membangun lingkungan dan meluncurkan lingkungan. Runtime untuk dijalankan di atas Xen didasarkan pada kernel yang dipreteli Mini-OS, dan untuk hypervisor dan sistem berbasis kernel lainnya Hanya 5.

Meskipun aplikasi dan perpustakaan dibuat dalam bahasa OCaml tingkat tinggi, lingkungan yang dihasilkan menunjukkan kinerja yang cukup baik dan ukuran minimal (misalnya, server DNS hanya membutuhkan 200 KB). Pemeliharaan lingkungan juga disederhanakan, karena jika perlu memperbarui program atau mengubah konfigurasi, cukup membuat dan meluncurkan lingkungan baru. Didukung beberapa lusin perpustakaan dalam bahasa OCaml untuk melakukan operasi jaringan (DNS, SSH, OpenFlow, HTTP, XMPP, dll.), bekerja dengan penyimpanan dan menyediakan pemrosesan data paralel.

Perubahan utama dalam rilis baru ini terkait dengan penyediaan dukungan untuk fitur-fitur baru yang ditawarkan dalam toolkit Solo5 0.6.0 (lingkungan kotak pasir untuk menjalankan unikernel):

  • Menambahkan kemampuan untuk menjalankan unikernel MirageOS di lingkungan yang terisolasi spt (β€œtender proses sandbox”) yang disediakan oleh toolkit Hanya 5. Saat menggunakan backend spt, kernel MirageOS berjalan di proses pengguna Linux yang menerapkan isolasi minimal berdasarkan seccomp-BPF;
  • Dukungan diterapkan manifes aplikasi dari proyek Solo5, yang memungkinkan Anda menentukan beberapa adaptor jaringan dan perangkat penyimpanan yang terpasang ke unikernel secara terpisah berdasarkan backend hvt, spt, dan muen (penggunaan untuk backend genode dan virtio saat ini terbatas pada satu perangkat);
  • Perlindungan backend berbasis Solo5 (hvt, spt) telah diperkuat, misalnya telah disediakan bangunan dalam mode SSP (Stack Smashing Protection).

Sumber: opennet.ru

Tambah komentar