Elk жобасы микроконтроллерлер үшін ықшам JavaScript қозғалтқышын әзірлейді

Elk 2.0.9 JavaScript қозғалтқышының жаңа шығарылымы қол жетімді, ол микроконтроллерлер сияқты ресурстары шектеулі жүйелерде, соның ішінде 32 КБ жедел жады және 2 КБ Flash бар ESP30 және Arduino Nano тақталарында пайдалануға бағытталған. Берілген виртуалды машинамен жұмыс істеу үшін 100 байт жады және 20 Кбайт сақтау орны жеткілікті. Жоба коды C тілінде жазылған және GPLv2 лицензиясы бойынша таратылады. Жобаны құру үшін C компиляторы жеткілікті - ешқандай қосымша тәуелділіктер пайдаланылмайды. Жобаны IoT құрылғыларына арналған операциялық жүйені Mongoose OS, mJS JavaScript қозғалтқышы және ендірілген Mongoose веб-сервері (Siemens, Schneider Electric, Broadcom, Bosch, Google, Samsung және Qualcomm сияқты компаниялардың өнімдерінде пайдаланылады) әзірлеушілер әзірлейді. ).

Elk-тің негізгі мақсаты - әртүрлі автоматтандыру тапсырмаларын орындайтын JavaScript-те микроконтроллерлерге арналған микробағдарлама жасау. Қозғалтқыш JavaScript өңдегіштерін C/C++ қолданбаларына ендіру үшін де қолайлы. Қозғалтқышты кодыңызда пайдалану үшін, elk.c файлын бастапқы ағашқа орналастырып, elk.h тақырып файлын қосыңыз және js_eval қоңырауын пайдаланыңыз. C/C++ кодында анықталған функцияларды JavaScript сценарийлерінен шақыруға рұқсат етіледі және керісінше. JavaScript коды негізгі кодтан оқшауланған қорғалған ортада байт-код жасамайтын және динамикалық жадты бөлуді пайдаланбайтын интерпретатордың көмегімен орындалады.

Elk Ecmascript 6 спецификациясының шағын жиынын жүзеге асырады, бірақ жұмыс сценарийлерін жасау үшін жеткілікті.Атап айтқанда, ол операторлар мен типтердің негізгі жинағын қолдайды, бірақ массивтерді, прототиптерді, this, new және delete өрнектерін қолдамайды. Var және const орнына let, ал do орнына while, switch және for пайдалану ұсынылады. Стандартты кітапхана қамтамасыз етілмеген, яғни. мұндай Date, Regexp, Function, String және Number нысандары жоқ.

Ақпарат көзі: opennet.ru

пікір қалдыру