Samsung lanserte i forrige uke den første stabile utgaven av JerryScript, en ny JavaScript-motor beregnet for enheter og systemer med svært begrensede ressurser. Arbeidet med motoren, som har blitt utviklet helt fra bunnen av, har pågått siden juni 2014. I juni 2015 ble prosjektet gjort til åpen kildekode med Apache-lisens.
JerryScript er beregnet for enheter i tingenes internett (IoT) og er spesielt optimalisert for mikrokontollere. Motoren er kompatibel med ECMAScript 5.1.
Les også: Første helt nye jQuery på tre år
Svært lite RAM
Det mest spesielle med motoren er at den krever svært lite minne. I utgangspunktet bruker den ikke mer enn omtrent 3 kilobyte med RAM, men dette avhenger av operasjonene som kjøres. Samsung oppgir at JerryScript i praksis kan kjøres med under 64 kilobyte med RAM. Selve programvaren krever under 200 kilobyte med lagringsplass, typisk i et flashminne.
JerryScript er utviklet som et C-bibliotek som skal være svært flyttbart. Foreløpig støttes operativsystemene Linux (for x86 og ARMv7), macOS, NuttX, Zephyr, mbed og RIOT. Motoren kan kjøres på utviklerkort som Arduino 101, STN32F4, ESP8266 og FRDM-K64K.
Les også: For fem dollar får du nå kjøpt en datamaskin
Åpner integrerte enheter for webutviklere
I en presentasjon fra i sommer opplyser Samsung at hensikten med å utvikle JerryScript er å gjøre det enklere for webutviklere å lage programvare for integrerte enheter. Fordelene med JavaScript i denne sammenhengen, er ifølge Samsung bedre sikkerhet enn vilkårlig, systemspesifikk kode, mulighet for dynamisk lasting over nettverket, samt økt produktivitet.
Det at JavaScript-baserte applikasjoner har svakere ytelse enn tilsvarende systemspesifikk programvare, har ifølge Samsung begrenset betydning for de kontrolloppgavene slike enheter gjerne skal utføre.
I presentasjonen viser Samsung til målinger som viser at JerryScript både bruker betydelig mindre minne og likevel kan utføre oppgaver raskere enn Duktape, en lignende JavaScript-motor beregnet for integrerte enheter. Ytterligere tall finnes her.
Planen framover består av ytterligere optimalisering av minnebruken og ytelsen, støtte for flere kort, i tillegg til støtte for debugging og minneprofilering.
Leste du denne? Forskere skaper databrikker av trær