Erik Moqvist, skaparen av plattformen och verktygen , utvecklar en ny distribution , inriktad pÄ att skapa inbyggda Linux-system för avskild körning av specifika applikationer skrivna i C. Distributionen kÀnnetecknas av att programvaran paketeras som en enda statiskt sammanstÀlld körbar fil som inkluderar alla komponenter nödvÀndiga för att köra applikationen (i grunden bestÄr distributionen av Linux-kÀrnan och en ramdisk med en statiskt sammanstÀlld init-process som omfattar applikationen och nödvÀndiga bibliotek). Koden licensieras under MIT.
I miljön levereras alla subsystems och systemanrop frĂ„n Linux-kĂ€rnan, inklusive Ă„tkomst till FS, nĂ€tverksstacken och enhetsdrivrutiner. För att koppla till applikationen finns bibliotek som (Monolinux C-bibliotek med shell, DHCP- och NTP-klienter, Device-mapper etc.), (asynkront ramverk), , (HTTP, FTP, âŠ), (delta-patchar), (komprimeringsalgoritm), (verktyg), , och . En snabb utvecklingscykel stöds, vilket gör att en ny version kan bedömas i drift inom nĂ„gra sekunder efter att Ă€ndringar har gjorts i koden.
Varianter av Monolinux Ă€r förberedda för kort och . Den slutliga storleken pĂ„ byggarna Ă€r cirka 800 KB. Kortet Ă€r utrustat med SoC i.MX6UL med CPU ARMv7-A (528 MHz), 1 GB DDR3 RAM och 4 GB eMMC. Boottiden pĂ„ Jiffy-kortet Ă€r bara 0,37 sekunder â frĂ„n pĂ„slagning till filsystemet Ext4 Ă€r klart. Av detta gĂ„r 1 ms pĂ„ hĂ„rdvaruinitialisering av SoC, 184 ms för att köra kod frĂ„n flashminnet, 86 ms för bootloadern, 62 ms för att starta Linux-kĂ€rnan och 40 ms för att aktivera Ext4. Omstarttiden Ă€r 0,26 sekunder. Vid anvĂ€ndning av nĂ€tverksstacken, pĂ„ grund av fördröjningar i förhandling av Ethernet-kopplingen och i att fĂ„ nĂ€tverksparametrarna, blir systemet redo för nĂ€tverksinteraktion efter 2,2 sekunder.
I systemet anvÀnds Linux-kÀrna 4.14.78 i minimal konfiguration med ytterligare , som eliminerar onödiga fördröjningar i MMC-drivrutinen (MMC ansluts av kortets firmware och vid starten av drivrutinen Àr det redan aktiverat) och som kör initialiseringen av MMC- och FEC (Ethernet) drivrutinerna i parallell lÀge.
KĂ€lla: opennet.ru
