Para peneliti dari Universitas Boston telah mengerjakan”Unikernel Linux”untuk menjelajahi pengoptimalan khusus aplikasi ke kernel Linux.
Tim Universitas Boston menjelaskan pekerjaan Unikernel Linux (UKL) mereka:
Unikernel adalah sistem operasi khusus di mana aplikasi terhubung langsung dengan kernel dan berjalan dalam mode supervisor. Ini memungkinkan pengembang untuk mengimplementasikan pengoptimalan khusus aplikasi ke kernel, yang dapat langsung dipanggil oleh aplikasi (tanpa melalui jalur syscall). Sebuah aplikasi dapat mengontrol penjadwalan dan manajemen sumber daya dan langsung mengakses perangkat keras. Aplikasi dan kernel dapat dioptimalkan bersama, misalnya, melalui LTO, PGO, dll. Semua pengoptimalan ini, dan lainnya, menyediakan aplikasi dengan manfaat kinerja yang sangat besar dibandingkan sistem operasi tujuan umum.
Linux adalah sistem operasi de-facto saat ini. Aplikasi bergantung pada basis kode yang teruji pertempuran, komunitas pengembang besar, dukungan untuk kode lawas, ekosistem alat dan utilitas yang sangat besar, dan berbagai perangkat keras dan driver perangkat yang kompatibel. Linux juga memungkinkan beberapa tingkat pengoptimalan khusus aplikasi melalui opsi konfigurasi waktu pembuatan, konfigurasi waktu proses, dan baru-baru ini melalui eBPF. Tapi tetap saja, ada kebutuhan untuk pengoptimalan khusus aplikasi yang lebih halus, dan beberapa pengembang menggunakan teknik bypass kernel.
Unikernel Linux (UKL) bertujuan untuk mendapatkan yang terbaik dari kedua dunia dengan membawa pengoptimalan khusus aplikasi ke ekosistem Linux. Dengan cara ini, aplikasi yang tidak dimodifikasi dapat terus mendapatkan manfaat Linux sambil memanfaatkan pengoptimalan gaya unikernel. Secara opsional, aplikasi dapat dimodifikasi untuk meminta pengoptimalan yang lebih dalam.
Sepuluh patch yang dikirim kemarin di bawah tanda”permintaan komentar”berfungsi untuk mengadaptasi kernel Linux ke model unikernel dan perubahan awal lainnya.
Mereka yang ingin mempelajari lebih lanjut tentang proyek penelitian eksperimental Unikernel Linux ini dapat melakukannya melalui kernel milis.