Monolinux - бул ARMv7 528 МГц процессорунда 0.37 секундада жүктөлө турган бир файлдык бөлүштүрүү.

Эрик Моквист, платформанын автору Simba жана аспаптар кантуалдар, жаңы бөлүштүрүүнү иштеп чыгууда Monolinux, Си тилинде жазылган айрым тиркемелерди өз алдынча иштетүү үчүн камтылган Linux системаларын түзүүгө багытталган. Бөлүштүрүү программалык камсыздоонун бир статикалык байланышкан аткарылуучу файл түрүндө топтолгондугу менен өзгөчөлөнөт, ал тиркеменин иштеши үчүн зарыл болгон бардык компоненттерди камтыйт (негизинен дистрибуция Linux ядросунан жана статикалык тутуму бар RAM дискинен турат). тиркемени жана керектүү китепканаларды камтыган чогултулган башталгыч процесс). Code жайылуу MIT лицензиясы боюнча.

Айлана-чөйрө Linux ядросунун бардык подсистемаларын жана тутумдук чалууларын, анын ичинде файлга кирүү мүмкүнчүлүгүн, тармактык стек жана түзмөк драйверлерин камсыз кылат. сыяктуу китепканалар: ml (Shell, DHCP жана NTP кардарлары бар Monolinux C китепканасы, Device-mapper ж.б.), асинхрондук (асинхрондук алкак), бит агымы, бүгө (HTTP, FTP, ...), детоолдор (дельта тактары), ысып кетүү (кысуу алгоритми), адамгерчиликтуу (көмөкчү куралдар), mbedTLS, xz и сжатия. Кодго өзгөртүүлөрдү киргизгенден кийин бир нече секунданын ичинде жаңы версиянын иштешин баалоого мүмкүндүк берүүчү ыкчам иштеп чыгуу цикли колдоого алынат.

Monolinux варианттары такталар үчүн даярдалган Малина Pi 3 и Джиффи. Жыйындардын акыркы өлчөмү болжол менен 800 КБ. Төлө Джиффи CPU ARMv6-A (7 МГц), 528 ГБ DDR1 RAM жана 3 ГБ eMMC менен SoC i.MX4UL менен жабдылган. Jiffy тактасында жүктөө убактысы болгону 0.37 секундду түзөт - күйгүзүлгөндөн баштап Ext4 файл тутумуна чейин даяр. Бул убакыттын ичинен 1 мс SoCтин аппараттык инициализациясына, ROM кодун аткарууга 184 мс, жүктөгүчтүн иштешине 86 мс, Linux ядросун баштоого 62 мс жана Ext40 активдештирүүгө 4 мс сарпталат. Кайра жүктөө убактысы 0.26 секунд. Тармактык стекти колдонууда, Ethernet каналын сүйлөшүү жана тармактык параметрлерди алуу кечигүүсүнөн улам, система 2.2 секунданын ичинде тармактык өз ара аракеттенүүгө даяр болот.

Система Linux ядросун 4.14.78 кошумчасы менен минималдуу конфигурацияда колдонот тактар, MMC драйвериндеги ашыкча кечигүүлөрдү жоюу (MMC плата микропрограммасы менен туташтырылган жана драйверди ишке киргизүү учурунда иштетилген) жана параллелдүү режимде MMC жана FEC (Ethernet) драйверлерин инициализациялоону баштоо.

Source: opennet.ru

Комментарий кошуу