Projekt elk vyvíja kompaktný JavaScript engine pre mikrokontroléry

K dispozícii je nová verzia JavaScriptového enginu elk, verzia 2.0.9. Je zameraná na systémy s obmedzenými zdrojmi, ako sú mikrokontroléry vrátane dosiek ESP32 a Arduino Nano s 2 KB RAM a 30 KB Flash pamäte. Poskytnutý virtuálny stroj vyžaduje iba 100 bajtov pamäte a 20 KB úložného priestoru. Kód projektu je napísaný v jazyku C a je distribuovaný pod licenciou GPLv2. Na zostavenie projektu postačuje kompilátor jazyka C; nie sú potrebné žiadne ďalšie závislosti. Projekt vyvíjajú vývojári operačného systému Mongoose OS pre zariadenia IoT, JavaScriptového enginu mJS a vstavaného modulu... webové servery Mongoose (používaný v produktoch spoločností ako Siemens, Schneider Electric, Broadcom, Bosch, Google, Samsung a Qualcomm).

Hlavným účelom Elku je vytvoriť firmvér pre mikrokontroléry v JavaScripte, ktoré vykonávajú rôzne automatizačné úlohy. Engine je vhodný aj na vkladanie obslužných programov JavaScriptu do aplikácií C/C++. Ak chcete použiť motor vo svojom kóde, stačí umiestniť súbor elk.c do zdrojového stromu, zahrnúť hlavičkový súbor elk.h a použiť volanie js_eval. Je povolené volať funkcie definované v kóde C/C++ zo skriptov JavaScript a naopak. Kód JavaScript sa vykonáva v chránenom prostredí izolovanom od hlavného kódu pomocou tlmočníka, ktorý negeneruje bajtkód a nepoužíva dynamickú alokáciu pamäte.

Elk implementuje malú podmnožinu špecifikácie Ecmascript 6, ale postačujúcu na vytváranie pracovných skriptov. Podporuje najmä základnú sadu operátorov a typov, ale nepodporuje polia, prototypy, tento, nový a výrazy delete. Navrhuje sa použiť let namiesto var a const a kým namiesto do, prepnúť a pre. Neposkytuje sa žiadna štandardná knižnica, t.j. neexistujú žiadne takéto objekty Date, Regexp, Function, String a Number.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre stránky s DDoS ochranou, VPS VDS servery 🔥 Kúpte si spoľahlivý webhosting s ochranou DDoS, VPS VDS servery | ProHoster