Az elk projekt egy kompakt JavaScript-motort fejleszt mikrokontrollerekhez.

Megjelent az elk 2.0.9-es JavaScript-motor új verziója, amelyet erőforrás-korlátozott rendszerekben, például 2 KB RAM-mal és 30 KB Flash memóriával rendelkező ESP32 és Arduino Nano lapkákon való használatra terveztek. A biztosított virtuális gép működéséhez mindössze 100 bájt memória és 20 KB tárhely elegendő. A projekt kódját C nyelven írták, és GPLv2 licenc alatt terjesztik. A projekthez elegendő egy C fordító a megépítéshez – további függőségekre nincs szükség. A projektet az IoT eszközökhöz készült Mongoose OS operációs rendszer, a mJS JavaScript-motor és beágyazott webszerverek Mongoose (olyan cégek termékeiben alkalmazzák, mint a Siemens, Schneider Electric, Broadcom, Bosch, Google, Samsung és Qualcomm).

Az elk fő célja JavaScript nyelven mikrokontroller firmware-ek készítése, amelyek különféle automatizálási feladatokat hajtanak végre. A motor alkalmas JavaScript alapú kezelők beágyazására C/C++ alkalmazásokban is. A motor használatához elegendő a forráskód fájl elk.c fájl átadása a jelfájllal elk.h, és a js_eval hívás használata. A JavaScript szkriptekből hívhatóak a C/C++ kódban definiált függvények, és fordítva. A JavaScript kód védett és a fő kódnál elkülönített környezetben fut, olyan értelmezővel, amely nem generál bytecode-ot, és nem használ dinamikus memóriaallokációt.

Az elk implementál egy kis, de elegendő részsorozatot az Ecmascript 6 specifikációból. Konkrétan alapvető operátorok és típusok támogatottak, de nincs tömb- és prototípus-támogatás, valamint nem támogatja a this, new és delete kifejezéseket. A var és const helyett a let használata javasolt, míg a do, switch és for helyett a while használata ajánlott. Nincs standard könyvtár, azaz olyan objektumok, mint a Date, Regexp, Function, String és Number nem érhetők el.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster