Monolinux je jednosouborová distribuce, která se spouští na ARMv7 528 MHz CPU za 0.37 sekundy

Erik Moqvist, autor platformy Simba a nářadí cantools, vyvíjí novou distribuci Monolinux, zaměřená na vytváření vestavěných linuxových systémů pro samostatný běh určitých aplikací napsaných v jazyce C. Distribuce je pozoruhodná tím, že software je zabalen ve formě jednoho staticky propojeného spustitelného souboru, který obsahuje všechny komponenty potřebné pro fungování aplikace (distribuce se v podstatě skládá z linuxového jádra a RAM disku se statickým sestavený proces init, který zahrnuje aplikaci a potřebné knihovny) . Kód distribuovány pod licencí MIT.

Prostředí poskytuje všechny subsystémy a systémová volání linuxového jádra, včetně přístupu k systému souborů, síťového zásobníku a ovladačů zařízení. Knihovny jako: ml (Knihovna Monolinux C se shellem, klienty DHCP a NTP, mapovačem zařízení atd.), async (asynchronní framework), bitový proud, kadeř (HTTP, FTP, ...), detools (delta záplaty), tepelné smrštění (kompresní algoritmus), přátelský k lidem (pomocné nástroje), mbedTLS, xz и zlib. Je podporován rychlý vývojový cyklus, který umožňuje vyhodnotit provoz nové verze během několika sekund po provedení změn v kódu.

Monolinux varianty připravené pro desky Raspberry Pi 3 и Okamžik. Konečná velikost sestav je asi 800 KB. Platit Okamžik osazený SoC i.MX6UL s CPU ARMv7-A (528 MHz), 1 GB DDR3 RAM a 4 GB eMMC. Doba spouštění na desce Jiffy je pouhých 0.37 sekundy od zapnutí do připravenosti souborového systému Ext4. Z této doby je 1 ms vynaložena na hardwarovou inicializaci SoC, 184 ms na spuštění kódu ROM, 86 ms na operaci bootloaderu, 62 ms na start linuxového jádra a 40 ms na aktivaci Ext4. Doba restartu je 0.26 sekundy. Při použití síťového zásobníku je systém díky zpožděním při vyjednávání ethernetového kanálu a získávání síťových parametrů připraven na síťovou interakci za 2.2 sekundy.

Systém používá linuxové jádro 4.14.78 v minimální konfiguraci s přídavnými náplasti, odstranění zbytečných prodlev v ovladači MMC (MMC je připojeno firmwarem desky a je aktivováno již při spuštění ovladače) a spuštění inicializace ovladačů MMC a FEC (Ethernet) v paralelním režimu.

Zdroj: opennet.ru

Přidat komentář