Projektet elk utvecklar en kompakt JavaScript-motor för mikrokontroller.

En ny version av JavaScript-motorn elk 2.0.9 Ă€r tillgĂ€nglig, avsedd för anvĂ€ndning i resursbegrĂ€nsade system, sĂ„som mikrokontroller, inklusive ESP32-kort och Arduino Nano med 2 KB RAM och 30 KB Flash. För att köra den tillhandahĂ„llna virtuella maskinen krĂ€vs bara 100 byte minne och 20 KB lagringsutrymme. Projektets kod Ă€r skriven i C och distribueras under GPLv2-licensen. För att bygga projektet krĂ€vs endast en C-kompilator — inga ytterligare beroenden behövs. Projektet utvecklas av utvecklarna av operativsystemet för IoT-enheter Mongoose OS, JavaScript-motorn mJS och inbyggda webbserver. Mongoose (anvĂ€nds i produkter frĂ„n företag som Siemens, Schneider Electric, Broadcom, Bosch, Google, Samsung och Qualcomm).

Huvudsyftet med Elk Àr att skapa firmware för mikrokontroller pÄ JavaScript, som utför olika automatiseringsuppgifter. Motorn Àr ocksÄ lÀmplig för inbÀddning av JavaScript-handlÀggare i C/C++-applikationer. För att anvÀnda motorn i sin kod rÀcker det med att placera filen elk.c i koden, inkludera headerfilen elk.h och anvÀnda anropet js_eval. Anrop frÄn JavaScript-skript av funktioner definierade i C/C++-koden och vice versa Àr tillÄtet. JavaScript-koden exekveras i en skyddad och isolerad miljö frÄn huvudkoden med hjÀlp av en tolk som inte genererar bytekod och inte anvÀnder dynamisk minnesallokering.

I Elk implementeras en liten men tillrĂ€cklig delmĂ€ngd av specifikationen Ecmascript 6. SĂ€rskilt stöds en grundlĂ€ggande uppsĂ€ttning av operatörer och typer, men det finns inget stöd för arrayer, prototyper, this-uttryck, new och delete. IstĂ€llet för var och const rekommenderas att anvĂ€nda let, och istĂ€llet för do, switch och for — while. Ingen standardbibliotek tillhandahĂ„lls, dvs. det finns inga objekt som Date, Regexp, Function, String och Number.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster