Monolinux on yhden tiedoston jakelu, joka käynnistyy ARMv7 528 MHz -suorittimella 0.37 sekunnissa

Erik Moqvist, alustan kirjoittaja Simba ja työkalut cantools, kehittää uutta jakelua Monolinux, joka keskittyi sulautettujen Linux-järjestelmien luomiseen tiettyjen C-kielellä kirjoitettujen sovellusten itsenäiseen suorittamiseen. Jakelu on huomionarvoista siitä, että ohjelmisto on pakattu yhdeksi staattisesti linkitetyksi suoritettavaksi tiedostoksi, joka sisältää kaikki sovelluksen toimimiseen tarvittavat komponentit (lähinnä jakelu koostuu Linux-ytimestä ja RAM-levystä, jossa on staattisesti koottu aloitusprosessi, joka sisältää sovelluksen ja tarvittavat kirjastot) . Koodi jakelija MIT-lisenssillä.

Ympäristö tarjoaa kaikki Linux-ytimen alijärjestelmät ja järjestelmäkutsut, mukaan lukien tiedostojen käyttöoikeudet, verkkopino ja laiteohjaimet. Kirjastot, kuten: ml (Monolinux C -kirjasto shellillä, DHCP- ja NTP-asiakkaat, Device-mapper jne.), async (asynkroninen kehys), bittivirta, kiemura (HTTP, FTP, ...), detools (delta-paikat), lämpökutiste (pakkausalgoritmi), ihmisystävällinen (aputyökalut), mbedTLS, xz и zlib. Tuetaan nopeaa kehityssykliä, jonka avulla voit arvioida uuden version toiminnan muutamassa sekunnissa koodiin tehtyjen muutosten jälkeen.

Monolinux-versiot valmisteltu levyille Vadelma Pi 3 и hetkinen. Kokoonpanojen lopullinen koko on noin 800 KB. Maksaa hetkinen varustettu SoC i.MX6UL:lla, prosessori ARMv7-A (528 MHz), 1 Gt DDR3 RAM ja 4 Gt eMMC. Käynnistysaika Jiffy-levyllä on vain 0.37 sekuntia - virran kytkemisestä Ext4-tiedostojärjestelmään. Tästä ajasta 1 ms käytetään SoC:n laitteiston alustukseen, 184 ms ROM-koodin suorittamiseen, 86 ms käynnistyslataimen toimintaan, 62 ms Linux-ytimen käynnistämiseen ja 40 ms Ext4-aktivointiin. Uudelleenkäynnistysaika on 0.26 sekuntia. Verkkopinoa käytettäessä järjestelmä tulee valmiiksi verkkovuorovaikutukseen 2.2 sekunnissa, koska Ethernet-kanavan neuvottelemisessa ja verkkoparametrien saamisessa on viiveitä.

Järjestelmä käyttää Linux-ydintä 4.14.78 minimaalisessa kokoonpanossa lisäominaisuuksien kanssa laastareita, poistaa tarpeettomat viiveet MMC-ohjaimessa (MMC on liitetty kortin laiteohjelmistolla ja se on jo aktivoitu ajurin käynnistyksen yhteydessä) ja aloittaa MMC- ja FEC (Ethernet) -ajurien alustus rinnakkaistilassa.

Lähde: opennet.ru

Lisää kommentti