Monolinux ialah pengedaran fail tunggal yang but pada CPU ARMv7 528 MHz dalam 0.37 saat

Erik Moqvist, pengarang platform Simba dan alatan cantools, sedang membangunkan pengedaran baharu Monolinux, menumpukan pada mencipta sistem Linux terbenam untuk menjalankan kendiri bagi aplikasi tertentu yang ditulis dalam bahasa C. Pengedaran ini terkenal kerana perisian itu dibungkus dalam bentuk satu fail boleh laku yang dipautkan secara statik, yang merangkumi semua komponen yang diperlukan untuk aplikasi berfungsi (pada asasnya, pengedaran terdiri daripada kernel Linux dan cakera RAM dengan statik proses init terhimpun, yang merangkumi aplikasi dan perpustakaan yang diperlukan) . Kod diedarkan oleh di bawah lesen MIT.

Persekitaran menyediakan semua subsistem dan panggilan sistem kernel Linux, termasuk akses fail, tindanan rangkaian dan pemacu peranti. Perpustakaan seperti: ml (Pustaka Monolinux C dengan shell, klien DHCP dan NTP, Pemeta Peranti, dsb.), async (rangka kerja tak segerak), aliran bit, curl (HTTP, FTP, ...), nyah alatan (tompok delta), pengecutan haba (algoritma mampatan), mesra manusia (alat bantu), mbedTLS, xz ΠΈ zlib. Kitaran pembangunan pantas disokong, membolehkan anda menilai operasi versi baharu dalam masa beberapa saat selepas membuat perubahan pada kod.

Varian Monolinux disediakan untuk papan Raspberry Pi 3 ΠΈ Jiffy. Saiz akhir perhimpunan adalah kira-kira 800 KB. bayar Jiffy dilengkapi dengan SoC i.MX6UL dengan CPU ARMv7-A (528 MHz), 1 GB DDR3 RAM dan 4 GB eMMC. Masa but pada papan Jiffy hanya 0.37 saat - dari kuasa dihidupkan ke sistem fail Ext4 sedia. Pada masa ini, 1 ms dibelanjakan untuk permulaan perkakasan SoC, 184 ms untuk melaksanakan kod ROM, 86 ms untuk operasi pemuat but, 62 ms untuk memulakan kernel Linux dan 40 ms pada pengaktifan Ext4. Masa but semula ialah 0.26 saat. Apabila menggunakan susunan rangkaian, disebabkan kelewatan dalam merundingkan saluran Ethernet dan mendapatkan parameter rangkaian, sistem menjadi bersedia untuk interaksi rangkaian dalam 2.2 saat.

Sistem ini menggunakan kernel Linux 4.14.78 dalam konfigurasi minimum dengan tambahan tompok, menghapuskan kelewatan yang tidak perlu dalam pemacu MMC (MMC disambungkan oleh perisian tegar papan dan sudah diaktifkan pada masa pemacu dilancarkan) dan memulakan pemulaan pemacu MMC dan FEC (Ethernet) dalam mod selari.

Sumber: opennet.ru

Tambah komen